PHP使用phpword替换模板内容,不多说,直接上代码PHP使用phpword替换模板内容,不多说,直接上代码 /** * @param $param * @throws \PhpOffice\PhpWord\Exception\CopyFileException * @throws \PhpOffice\PhpWord\Exception\CreateTemporaryFileException * 生成教学word */ public function testDataToWord($param){ $data = json_decode(ExcelTo
/**
* @param $param
* @throws \PhpOffice\PhpWord\Exception\CopyFileException
* @throws \PhpOffice\PhpWord\Exception\CreateTemporaryFileException
* 生成教学word
*/
public function testDataToWord($param){
$data = json_decode(ExcelToWordService::$data,true);//数据
$document = new TemplateProcessor('/home/work/XXXX/Lesson_plan_module_10_1_3.docx');//模板地址
Settings::setOutputEscapingEnabled(true);//输出转义
$document->setValue('course_theme', $data[3][2]);
$document->setValue('course_time', $data[5][2]);
$document->setValue('course_target', $data[6][2]);
$document->setValue('course_focus', $data[7][2]);
$document->saveAs('./target.docx');
ob_clean();
ob_start();
$fp = fopen('./target.docx',"r");
$file_size = filesize('./target.docx');
Header("Content-type:application/octet-stream");
Header("Accept-Ranges:bytes");
Header("Accept-Length:".$file_size);
Header("Content-Disposition:attchment; filename=".'XXXX.docx');//生成的word名称
$buffer = 1024;
$file_count = 0;
while (!feof($fp) && $file_count < $file_size){
$file_con = fread($fp,$buffer);
$file_count += $buffer;
echo $file_con;
}
fclose($fp);
ob_end_flush();
}
问题1,在替换中会遇到转义字符输出错乱的情况,加上如下代码就OK了……
\PhpOffice\PhpWord\Settings::setOutputEscapingEnabled(true);
织梦狗教程
本文标题为:phpword模板处理-生成word


基础教程推荐
猜你喜欢
- PHP删除数组中指定值的元素常用方法实例分析【4种方法】 2022-11-12
- TP5 连接多个数据库及使用方法 2023-08-30
- PHP数据加密方式梳理介绍 2023-07-03
- PHP实现创建一个RPC服务操作示例 2023-04-01
- laravel model模型定义实现开启自动管理时间created_at,updated_at 2023-03-02
- PHP实现生成数据字典功能示例 2022-10-18
- thinkPHP3.2.2框架行为扩展及demo示例 2022-11-07
- PHP使用SMTP邮件服务器发送邮件示例 2022-11-16
- php中使用array_filter()函数过滤数组实例讲解 2023-05-19
- TP5(thinkPHP5框架)基于bootstrap实现的单图上传插件用法示例 2023-01-19