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');
    */

相关推荐
island13141 天前
CANN GE(图引擎)深度解析:计算图优化管线、内存静态规划与异构 Stream 调度机制
c语言·开发语言·神经网络
曹牧1 天前
Spring Boot:如何在Java Controller中处理POST请求?
java·开发语言
浅念-1 天前
C++入门(2)
开发语言·c++·经验分享·笔记·学习
WeiXiao_Hyy1 天前
成为 Top 1% 的工程师
java·开发语言·javascript·经验分享·后端
User_芊芊君子1 天前
CANN010:PyASC Python编程接口—简化AI算子开发的Python框架
开发语言·人工智能·python
Max_uuc1 天前
【C++ 硬核】打破嵌入式 STL 禁忌:利用 std::pmr 在“栈”上运行 std::vector
开发语言·jvm·c++
故事不长丨1 天前
C#线程同步:lock、Monitor、Mutex原理+用法+实战全解析
开发语言·算法·c#
牵牛老人1 天前
【Qt 开发后台服务避坑指南:从库存管理系统开发出现的问题来看后台开发常见问题与解决方案】
开发语言·qt·系统架构
froginwe111 天前
Python3与MySQL的连接:使用mysql-connector
开发语言
灵感菇_1 天前
Java HashMap全面解析
java·开发语言