gpt4 book ai didi

php - 无法使用 PHPWord TemplateProcessor 下载 word docx

转载 作者:行者123 更新时间:2023-12-05 01:19:45 26 4
gpt4 key购买 nike

我可以使用 PHPWord 从头开始​​生成下载的 word 文档:创建 PhpWord 对象:

$phpWord = new \PhpOffice\PhpWord\PhpWord();

添加部分和行(省略)并创建标题:

$datetime = date('Y_M_d_G_i');
$filename = 'receipt_' . $datetime . '.docx';
header("Content-Description: File Transfer");
header('Content-Disposition: attachment; filename="' . $filename . '"');
header('Content-Type: application/vnd.openxmlformats-officedocument.wordprocessingml.document');
header('Content-Transfer-Encoding: binary');
header('Cache-Control: must-revalidate, post-check=0, pre-check=0');
header('Expires: 0');

从 phpWord 对象创建一个 writer:

$xmlWriter = \PhpOffice\PhpWord\IOFactory::createWriter($phpWord, 'Word2007');

写入输出:

$xmlWriter->save("php://output");

我没有做的是从服务器上的模板下载文档:创建 TemplateProcessor 有效:没有错误,PHP 将 $templateProcessor 识别为该类的对象:

$templateProcessor = new \PhpOffice\PhpWord\TemplateProcessor(asset_url() . 'templates/receipt_template.docx');

但我不知道如何写入输出。如果我可以生成一个 PhpWord 对象,那么我可以使用 IOFactory::createWriter 方法,但是 TemplateProcessor 没有返回 PhpWord 对象的方法。

我能得到的最接近的方法是尝试从 IOFactory::load 中创建一个 $phpWord 文档。但这只会创建一个空白文档

$phpWord = \PhpOffice\PhpWord\IOFactory::load($templateProcessor->save());

最佳答案

<?
require_once "../include/PHPWord-develop/bootstrap.php";

$templateProcessor = new \PhpOffice\PhpWord\TemplateProcessor('contrato01.docx');

$templateProcessor->setValue('variable01', 'Sun');
$templateProcessor->setValue('variable02', 'Mercury');

//#####################################################
// Save File
//#####################################################
//#####################################################
header("Content-Disposition: attachment; filename='ejemplo.docx'");
$templateProcessor->saveAs('php://output');
//#####################################################
//#####################################################
?>

关于php - 无法使用 PHPWord TemplateProcessor 下载 word docx,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37693151/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com