PHP 读取Word文档

PHP读取Word文档

源码地址:https://github.com/PHPOffice/PHPWord

PHP读取Word文档,进过测试暂时只能支持*.docx格式的Word文件

实现PHP读取Word文档原理是通过先将docx文件转换成临时html文件,再用PHP函数file_get_contents读取临时html文件中的内容,也就是读取docx文件中的内容,最后删除临时html文件

//引入PHPword类
use PhpOffice\PhpWord\Autoloader;
use PhpOffice\PhpWord\Settings;
use PhpOffice\PhpWord\IOFactory;
require_once 'PhpWord/Autoloader.php';

//设置docx要转换的文件格式,可以设置为多种,如 $writers = array('Word2007' => 'docx', 'ODText' => 'odt', 'RTF' => 'rtf', 'HTML' => 'html', 'PDF' => 'pdf');
$writers = array('HTML' => 'html');

//初始化PHPword类
Autoloader::register();

//初始化配置
Settings::loadConfig();

//加载test.docx文件
$phpWord = \PhpOffice\PhpWord\IOFactory::load('test.docx');

//将加载的test.docx内容赋值到$xmlWriter
$xmlWriter = IOFactory::createWriter($phpWord, 'HTML');

//声明临时html文件
$tmpFile = 'data/tmp/word.html';

//将$xmlWriter的值写入临时html文件
$xmlWriter->save($tmpFile);

//获取临时临时html文件中的内容
$content = file_get_contents($tmpFile);

//删除临时html文件
unlink($tmpFile);

//输出读取的内容
var_dump($content);

发表评论