PHP实现数据动态写入word模板文件里面

步骤:
  1. 安装 PHPWord(通过 Composer):

    复制代码
    1   composer require phpoffice/phpword
    2   
  2. 准备一个 .docx 模板(把你的 .doc 另存为 .docx 格式),并将占位符改为类似 $ {activityName}(PHPWord 默认识别 $ {xxx})。

  3. PHP 代码示例:

    <?php require_once 'vendor/autoload.php';

    use PhpOffice\PhpWord\TemplateProcessor;

    // 假设你的模板文件是 activity_template.docx,占位符格式为 {xxx} template = new TemplateProcessor('activity_template.docx');

    // 替换数据(根据你表单的实际字段调整)
    template->setValue('activityName', '校园歌手大赛'); template->setValue('organizer', '校学生会');
    template->setValue('contactPerson', '张三'); template->setValue('phone', '13800138000');
    template->setValue('date', '2026年3月15日'); template->setValue('location', '大学生活动中心');
    $template->setValue('description', '本次活动旨在丰富校园文化生活...');

    // 保存到文件
    $template->saveAs('活动申请表_已填写.docx');

    // 或直接输出下载(取消注释下面几行即可)
    /*
    header('Content-Type: application/vnd.openxmlformats-officedocument.wordprocessingml.document');
    header('Content-Disposition: attachment; filename="活动申请表_已填写.docx"');
    $template->saveAs('php://output');
    */

相关推荐
周万宁.FoBJ4 分钟前
vue源码讲解之 reactive解析(仅proxy部分)
开发语言·javascript·ecmascript
阿贵---8 分钟前
单元测试在C++项目中的实践
开发语言·c++·算法
2401_8914821714 分钟前
C++中的事件驱动编程
开发语言·c++·算法
sw12138918 分钟前
C++与Rust交互编程
开发语言·c++·算法
2401_8579182922 分钟前
模板编译期机器学习
开发语言·c++·算法
weixin_4041576823 分钟前
Java高级面试与工程实践问题集(一)
java·开发语言·面试
清风徐来QCQ25 分钟前
Java2(valueOf,Character,StringBuilder,设计模式)
java·开发语言
2403_8355684727 分钟前
多平台UI框架C++开发
开发语言·c++·算法
台XX29 分钟前
Java容器常用方法
java·开发语言
yunyun3212329 分钟前
C++中的适配器模式
开发语言·c++·算法