php word实现
使用 PHP 操作 Word 文档
PHP 可以通过 COM 对象、PHPWord 库或直接生成 XML 文件来操作 Word 文档。
COM 对象(仅限 Windows)
需要安装 Microsoft Word 并启用 PHP 的 COM 扩展。
$word = new COM("word.application") or die("Unable to instantiate Word");
$word->Visible = 1;
$word->Documents->Add();
$word->Selection->TypeText("Hello World");
$word->Documents[1]->SaveAs("C:/test.doc");
$word->Quit();
$word = null;
使用 PHPWord 库
PHPWord 是一个流行的开源库,支持生成和操作 Word 文档。
安装 PHPWord:
composer require phpoffice/phpword
基本示例:
require_once 'vendor/autoload.php';
$phpWord = new \PhpOffice\PhpWord\PhpWord();
$section = $phpWord->addSection();
$section->addText("Hello World");
$objWriter = \PhpOffice\PhpWord\IOFactory::createWriter($phpWord, 'Word2007');
$objWriter->save('helloWorld.docx');
直接生成 XML
可以手动创建符合 Office Open XML 标准的 XML 文件。
$xml = '<?xml version="1.0" encoding="UTF-8"?>
<w:document xmlns:w="http://schemas.openxmlformats.org/wordprocessingml/2006/main">
<w:body>
<w:p>
<w:r>
<w:t>Hello World</w:t>
</w:r>
</w:p>
</w:body>
</w:document>';
file_put_contents('document.docx', $xml);
高级功能
添加表格
使用 PHPWord 添加表格:
$section = $phpWord->addSection();
$table = $section->addTable();
$table->addRow();
$table->addCell(2000)->addText("Cell 1");
$table->addCell(2000)->addText("Cell 2");
添加图片
$section->addImage('path/to/image.jpg', array('width'=>300, 'height'=>200));
设置样式
$fontStyle = array('name'=>'Arial', 'size'=>12, 'bold'=>true);
$paragraphStyle = array('align'=>'center');
$section->addText("Styled Text", $fontStyle, $paragraphStyle);
注意事项
- COM 方法仅适用于 Windows 系统
- PHPWord 支持 DOCX 格式(Word 2007+)
- 对于旧版 DOC 格式,可能需要使用其他方法
- 服务器环境可能需要配置适当的权限才能生成文件







