【发布时间】:2015-09-13 04:45:51
【问题描述】:
我想逐行读取.docx 文件中的文本并将每一行数据保存在一个数组中,因为.docx 是一个压缩文件,我想将其转换为.doc 文件,这样我可以使用@fopen($filename, 'r'); 读取文件。
以下是我尝试使用 PHPWord 从 .docx 转换为 .doc 的代码,
<?php
require_once 'phpWord/PHPWord.php';
$PHPWord = new PHPWord();
$document = $PHPWord->loadTemplate('BasicTable.docx');
// Save File
$objWriter = PHPWord_IOFactory::createWriter($PHPWord, 'Word2007');
$objWriter->save('BasicTable4.doc');
?>
这会创建一个错误的.doc 文件。
【问题讨论】:
-
使用
fopen读取.doc文件,然后逐行读取可能不是您想要的。 -
@Eborbob 如果它是一个 .doc 文件,那么我可以分解每个换行符的数据。
-
如果它是 Word 文档,您还会在其中包含大量元数据,但听起来在您的用例中您已经涵盖了这些内容。
-
@Eborbob 好的,那么解决方案是什么...我可以使用 phpWord 直接读取 .docx 文件吗?
-
无法确定,但 .doc 的格式适用于 2007 年之前的 ms 字。从 2007 年起使用 .docx 扩展名。