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);