安装 PHPWord
首先,你需要安装 PHPWord 库。你可以使用 Composer 来安装:
composer require phpoffice/phpword
获取 Word 文档中的内容
你可以使用 PHPWord 库来读取 Word 文档中的内容。以下是一个示例代码,展示如何获取 Word 文档中的文本内容:
<?php
require 'vendor/autoload.php';
use PhpOffice\PhpWord\IOFactory;
$filePath = '123.docx'; //这里是文件的路径
// 加载 Word 文件
$phpWord = IOFactory::load($filePath);
$sections = $phpWord->getSections();
$content = [];
foreach ($sections as $section) {
$elements = $section->getElements();
foreach ($elements as $key => $element) {
//获取文本内容
if (method_exists($element, 'getText')) {
$content[] = $element->getText();
}
//获取文档的表格里的内容
if ($element instanceof \PhpOffice\PhpWord\Element\Table) {
$tableContent = "<table><tbody>";
foreach ($element->getRows() as $row) {
$tableContent .= "<tr>";
foreach ($row->getCells() as $cell) {
// 获取单元格的文本
foreach ($cell->getElements() as $cellElement) {
if(!empty($cellElement->getText())){
$tableContent .= "<td>" . $cellElement->getText() . "</td>";
}
}
}
$tableContent .= "</tr>"; // 每行数据后换行
}
$tableContent .= "</tbody></table>";
$content[] = $tableContent;
}
if ($element instanceof \PhpOffice\PhpWord\Element\TextRun) {
//获取文档里的图片并保存到本地
foreach ($element->getElements() as $ele2){
if ($ele2 instanceof \PhpOffice\PhpWord\Element\Image){
$imageSrc = 'images/' . md5($ele2->getSource()) . '.' . $ele2->getImageExtension();
$imageData = $ele2->getImageStringData(true);
// $imageData = 'data:' . $ele2->getImageType() . ';base64,' . $imageData;
file_put_contents($imageSrc, base64_decode($imageData));
$content[] = '<img src="/'. $imageSrc .'" style="width:100%;height:auto">';
}
}
}
}
}
// 打印内容
print_r($content);
?>