最近接了个项目,项目方要实现,可以自动更换word模板里的内容,然后生成合同,于是启蒙博客就去查找了相关的教程。发现一款特别好用的扩展。


PHPWord
git地址:https://GitHub.com/PHPOffice/PHPWord
composer安装:composer require phpoffice/phpword


在使用过程中也遇到了很多问题,有的问题解决了,但有的问题至今仍有余留。我们先来看下简单的使用教程吧!


PHPWord官方文档:https://phpword.readthedocs.io/en/latest/

我们首先要做的就是通过composer安装好phpword

准备一个模板然后new出来


$file = "word文件地址";
$phpword = new TemplateProcessor($file);
开始进行文字替换
cus_name为我们在word文档里提前预留的变量
$conmpany="小明";
$phpword->setValue('cus_name',$conmpany);
word文档里需要替换的内容我们要按以下内容设置
例:姓名:${cus_name}
替换后我们将得到:姓名:小明
替换图片的方法
$imgUrl为我们图片所存储的地址
image为我们需要替换模板里的变量
$phpword->setImageValue('image',$imgUrl);
整体替换完后我们保存新的word文档
$file = '需要保存的文件路径';
$phpword->saveAs($file);


至此我们的phpword替换文档和图片就完成了。但在操作中小编始终无法将图片放在word里文字的上方或者下方。只能占一个位。


评论(0条)

刀客源码 游客评论