php 实现文档
PHP 实现文档生成
PHP 可以通过多种方式实现文档生成,包括使用内置函数、第三方库或框架。以下是几种常见的方法:
使用内置函数生成文本文件
PHP 内置的文件操作函数可以轻松生成文本文件:
$file = fopen("document.txt", "w");
fwrite($file, "This is a sample document generated by PHP.");
fclose($file);
使用 PHPWord 生成 Word 文档
PHPWord 是一个流行的库,用于生成 Microsoft Word 文档:

require_once 'PHPWord.php';
$phpWord = new \PhpOffice\PhpWord\PhpWord();
$section = $phpWord->addSection();
$section->addText("Hello World");
$objWriter = \PhpOffice\PhpWord\IOFactory::createWriter($phpWord, 'Word2007');
$objWriter->save('helloWorld.docx');
使用 TCPDF 生成 PDF 文档
TCPDF 是一个功能强大的 PDF 生成库:
require_once('tcpdf/tcpdf.php');
$pdf = new TCPDF(PDF_PAGE_ORIENTATION, PDF_UNIT, PDF_PAGE_FORMAT, true, 'UTF-8', false);
$pdf->AddPage();
$pdf->SetFont('helvetica', 'B', 20);
$pdf->Cell(0, 10, 'PDF Document Generated with TCPDF', 0, 1, 'C');
$pdf->Output('example.pdf', 'I');
使用 PHPExcel 生成 Excel 文档
PHPExcel(现已被 PhpSpreadsheet 取代)可以生成 Excel 文件:

require 'vendor/autoload.php';
use PhpOffice\PhpSpreadsheet\Spreadsheet;
use PhpOffice\PhpSpreadsheet\Writer\Xlsx;
$spreadsheet = new Spreadsheet();
$sheet = $spreadsheet->getActiveSheet();
$sheet->setCellValue('A1', 'Hello World !');
$writer = new Xlsx($spreadsheet);
$writer->save('hello_world.xlsx');
使用 DOMDocument 生成 HTML/XML 文档
PHP 的 DOMDocument 类可以创建结构化文档:
$doc = new DOMDocument();
$root = $doc->createElement("root");
$doc->appendChild($root);
$item = $doc->createElement("item", "content");
$root->appendChild($item);
$doc->save("document.xml");
使用 Markdown 生成文档
通过解析 Markdown 语法生成格式化文档:
require 'vendor/autoload.php';
use League\CommonMark\CommonMarkConverter;
$converter = new CommonMarkConverter();
$markdown = "# Heading\n\nThis is bold text.";
$html = $converter->convertToHtml($markdown);
file_put_contents('output.html', $html);
使用 Twig 模板引擎生成文档
Twig 可以用于生成各种格式的文档模板:
require_once 'vendor/autoload.php';
$loader = new \Twig\Loader\ArrayLoader([
'doc' => 'Hello {{ name }}!',
]);
$twig = new \Twig\Environment($loader);
echo $twig->render('doc', ['name' => 'World']);
选择哪种方法取决于具体需求。对于简单文本文件,内置函数足够;对于复杂文档格式,建议使用专门的库。






