在PHP中将数据插入.docx和.odt

时间:2011-10-07 11:32:07

标签: php ms-word openoffice.org

我们将数据库中的数据插入到word文档中(Word 2007)。其中有表格,每一组数据都应该在一个单独的页面上。
现在PHPWord可以很好地满足我们的需求。但是我们的一些客户使用OpenOffice.org,而PHPWord似乎并没有创建100%正确的Word文档。 Word可以处理这些错误,但OpenOffice不能 所以,我的问题是:是否还有其他优秀的PHP库可以创建编辑器可以读取的文档,还是更好地使用Word的库和OpenOffice.org的另一个库? (对于OpenOffice.org,我会使用http://www.odtphp.com/)。我更喜欢使用一个创建Word文档的库。

1 个答案:

答案 0 :(得分:0)

好的,我们找到了解决方案。我会在这里写它,以防有人遇到同样的问题。 这些文件在OpenOffice.org中被格式化,因为PhpWord使用空格和换行符格式化xml。 Word删除这一行并显示文档应该是什么,但是OOo为文档中的xml-doc中的每个换行插入换行符。更改Shared / XMLWriter.php中的第79行和第84行就可以了。

// Set default values
// proposed to be false in production version
$this->_xmlWriter->setIndent(true);
//$this->_xmlWriter->setIndent(false); 

// Set indent
// proposed to be '' in production version
$this->_xmlWriter->setIndentString('  ');
//$this->_xmlWriter->setIndentString('');