业务经理

微信扫描以上二维码

028-61286886

技术咨询

Phpword生成word文档并添加下载链接

迅睿框架 更新 2025-03-07 13:29:36 远山红叶

按照《Phpword生成word文档》   https://www.xunruicms.com/doc/1103.html  操作成功并实现下载的过程记录,代码如下:

<?php namespace Phpcmf\Controllers;

class Doc extends \Phpcmf\Common{

   // doc模板文件导出
   public function index() {
 // 使用系统目录(https://www.xunruicms.com/doc/373.html)把模板文件放在/template/下面
        $tpl = TPLPATH.'test.docx'; 
        $PHPWord = new \PhpOffice\PhpWord\PhpWord();
        $templateProcessor = new \PhpOffice\PhpWord\TemplateProcessor($tpl);
 // 设置变量,使用时替换比较方便
        $name = '张三';
 $zhiwei = '公务员';
 $bianhao = '360281199909090009';
 $uptime = date("Y-m-d H:i:s");
        // 开始对模板赋值
        $templateProcessor->setValue('name', $name);
        $templateProcessor->setValue('zhiwei', $zhiwei);
        $templateProcessor->setValue('bianhao', $bianhao);
 $templateProcessor->setValue('uptime', $uptime);
 $date = date("Y-m-d");  
 // 取模运算获取时间戳后四位,防止文件名重复
 $timeDigits = time() % 10000;
 // 下面的test以后可以改成变量
 $filename = 'test-'.$date.'-'.$timeDigits;
        // 保存新的文件到uploadfile\phptodocx\下面,注意phptodocx\后面不加\就不行了。
        $templateProcessor->saveAs(WEBPATH.'uploadfile\phptodocx\\'.$filename.'.docx');
 // 生成下载链接
 echo "<a href='/uploadfile/phptodocx/".$filename.".docx' target='_blank'>".$filename."</a>";
 exit;
   }
}



方案

  • soevil #1 · 2025-03-07 13:29:36
    要是想导出表单内的数据要怎么写?

迅睿系统漏洞

独立站群系统
独立站群系统(2026-09-14)
子站独立部署时修复同步附件失败问题
在线客服
在线客服(2026-09-13)
修复删除会话报错问题 删除会话时联动删除聊天图片
在线考试竞赛系统
在线考试竞赛系统(2026-09-12)
增加投票功能 考试功能拓展 注意:更新后需要执行系统更新,更新数...
网上信箱
网上信箱(2026-09-12)
修复新版本兼容问题
GeoSeo收录宝
GeoSeo收录宝(2026-09-12)
1 优化Update.php文件,解决版本在线升级不完整问题 2 ...
GeoSeo工具箱
GeoSeo工具箱(2026-09-11)
修正历史记录推送
微信系统
微信系统(2026-09-11)
增加数据统计总览界面 账号管理增加服务和公众号的区别 菜单管理支持更...
答题系统
答题系统(2026-09-11)
一站式在线答题系统,支持真题考试、题库练习和错题本,适合培训、考证、...
阿里云滑动验证码
阿里云滑动验证码(2026-09-10)
采用阿里云验证码替换迅睿系统自带的图片验证码和滑动验证码。后台设置方...
下载Plus
下载Plus(2026-09-09)
为网站附件下载加上“计数、限次、统计、防护”四重能力:按用户组控制下...