如果您无法下载资料,请参考说明:
1、部分资料下载需要金币,请确保您的账户上有足够的金币
2、已购买过的文档,再次下载不重复扣费
3、资料包下载后请先用软件解压,在使用对应软件打开
PHPWordapi使⽤⽅法整理,加载模板⽂件,替换模板内容,动态表格⽣成,表格⾏数不定处。。。使⽤PHPWord⽣成合同什么的很⽅便,也很简单,就是在doc模板⽂件中提前设置好变量名称,如${name},然后替换成真实内容就⾏,包括word中动态表格(⾏数不定)的处理也⾮常简单。加载模板⽂件1$path="tpl.doc";指明你的//word模板地址2$phpWordProcessor=newTemplateProcessor($path);加载模板⽂件//替换模板中内容word中动态内容使⽤${varName}标记,然后替换成实际内容即可1$phpWordProcessor->setValue('company',"北京3W测试公司");2$phpWordProcessor->setValue('company_address',"北京市海淀区中关村创业⼤街");3$phpWordProcessor->setValue('company_mobile',"15600059668");4$phpWordProcessor->setValue('company_name',"李德龙");替换动态表格内容实际开发中遇到⼀个问题就是,合同中有个表格,但是表格有多少⾏数据是动态的,有⼏⾏数据就显⽰⼏⾏,不能多。最初想的办法是建⽴多个模板⽂件,⽐如20个doc⽂件,第⼀个⽂件中只设置2⾏,第⼆个⽂件只设置2⾏,实际数据有⼏⾏,我就调⽤第⼏个⽂件....这是⼀个笨办法,好在临时解决了问题,但是⾮常的2,PHPWord中处理这种问题⾮常⽅便。⾸先我们创建表格模板,只需要创建⼀⾏就⾏,然后我们在代码中根据实际情况进⾏复制,有多少⾏就复制多少⾏123$phpWordProcessor->cloneRow('index',3);找到//要复制的地⽅,随便复制其中的1个变量名即可4//依次替换其中的内容,第⼀⾏就是原变量名#1,第⼆⾏就是原变量名#2,以此类推5$phpWordProcessor->setValue('index#1','1');6$phpWordProcessor->setValue('type#1',资⾦补贴'');7$phpWordProcessor->setValue('service_title#1',中关村'⼩微补贴');8$phpWordProcessor->setValue('service_scale#1','20%');$phpWordProcessor->setValue('service_cash#1',成'功后付款');910$phpWordProcessor->setValue('index#2','2');11$phpWordProcessor->setValue('type#2',资⾦补贴'');12$phpWordProcessor->setValue('service_title#2',研发'补贴');13$phpWordProcessor->setValue('service_scale#2','20%');$phpWordProcessor->setValue('service_cash#2',成'功后付款');1415$phpWordProcessor->setValue('index#3','3');16$phpWordProcessor->setValue('type#3',资⾦补贴'');17$phpWordProcessor->setValue('service_title#3',海淀'补贴');18$phpWordProcessor->setValue('service_scale#3','20%');$phpWordProcessor->setValue('service_cash#3',成'功后付款');1920复制之后的表格模板,实际⾃动变成了如下样⼦替换复杂表格内容如表格形式是这样的,我们要动态添加多⾏也很简单12$values=array(3array(4'userId'=>1,5'userFirstName'=>'James',6'userName'=>'Taylor',7'userPhone'=>'+1428889773',),8array(9'userId'=>2,10'userFirstName'=>'Robert',11'userName'=>'Bell',12'userPhone'=>'+1428889774',13),14array(15'userId'=>3,16'userFi