欢迎光临,我们是一家专注中小型企业营销推广服务的公司!

咨询热线:400 9868 577
淮南兰乔电子商务有限公司
新闻中心News
淮南兰乔电子商务有限公司

PHP 生成 Word 工具 MDword 1.1.9 正式发布,已知 bug 修复

作者:聖光之護 | 点击: | 来源:聖光之護
2201
2026
部分新增特性&已修复问题图片宽度现支持以百分比形式设定针对部分小语种文字,已实现自动匹配兼容字体功能项目概述核心用途:动态生成Word文档核心优势:开发者仅需聚焦于动态数据与业务逻辑,无需手动调整文档样式(样式可通过MicrosoftWord编辑母版统一配置)MDword与PHPWord的对比分析相同之处均为基于PHP开发的开源库(Composer包)均可用于生成标准OfficeWord文档(.docx格式)差异点PHPWord采用...

部分新增特性 & 已修复问题

  • 图片宽度现支持以百分比形式设定
  • 针对部分小语种文字,已实现自动匹配兼容字体功能

项目概述

核心用途:动态生成 Word 文档
核心优势:开发者仅需聚焦于动态数据与业务逻辑,无需手动调整文档样式(样式可通过 Microsoft Word 编辑母版统一配置)

MDword 与 PHPWord 的对比分析

  • 相同之处

  1. 均为基于 PHP 开发的开源库(Composer 包)
  2. 均可用于生成标准 Office Word 文档(.docx 格式)
  • 差异点

  1. PHPWord 采用逐元素写入方式;而 MDword 则基于母版文档进行内容替换与结构扩展,功能更全面,开发效率更高
  2. 对于文字格式调整、封面插入、页眉页脚修改等操作,MDword 只需在 Word 中编辑一次母版即可复用;PHPWord 则需对每个元素单独编码设置,流程繁琐
  3. MDword 支持自动生成文档目录(TOC),开箱即用

使用指南

  • 安装方式

// 方式一:通过 composer 安装
composer require mkdreams/mdword

// 方式二:手动引入自动加载类
require_once('Autoloader.php');

  • 在母版文件 “temple.docx” 中添加批注示例

  • 基础调用示例(更多高级用法请参考测试案例:tests\samples\simple for readme,如目录生成、序号自动编号等)

// 实例化处理器并加载母版  
$TemplateProcessor = new WordProcessor();  
$template = 'temple.docx';  
$TemplateProcessor->load($template);  

// 设置普通变量值  
$TemplateProcessor->setValue('value', 'r-value');  

// 克隆指定区块(如“people”)3 次  
$TemplateProcessor->clones('people', 3);  

// 分别为克隆后的子项赋值  
$TemplateProcessor->setValue('name#0', 'colin0');  
$TemplateProcessor->setValue('name#1', [  
    ['text'=>'colin1','style'=>'style','type'=>MDWORD_TEXT],  
    ['text'=>1,'type'=>MDWORD_BREAK],  
    ['text'=>'86','style'=>'style','type'=>MDWORD_TEXT]  
]);  
$TemplateProcessor->setValue('name#2', 'colin2');  
$TemplateProcessor->setValue('sex#1', 'woman');  
$TemplateProcessor->setValue('age#0', '280');  
$TemplateProcessor->setValue('age#1', '281');  
$TemplateProcessor->setValue('age#2', '282');  

// 插入图片  
$TemplateProcessor->setImageValue('image', dirname(__FILE__).'/logo.jpg');  

// 删除含特定样式的段落  
$TemplateProcessor->deleteP('style');  

// 保存结果文档  
$rtemplate = __DIR__.'/r-temple.docx';  
$TemplateProcessor->saveAs($rtemplate);
  • 输出效果预览

  • 动态操作演示(GIF)

性能测试数据(基准脚本统计)

测试场景 耗时 (秒)
1 页母版执行 100 次变量赋值 0.04
1 页母版执行 500 次变量赋值 0.16
1 页母版执行 1000 次变量赋值 0.33
1 页母版执行 10000 次变量赋值 7.80
1750 页母版执行 100 次变量赋值 4.61
1750 页母版执行 500 次变量赋值 4.94
1750 页母版执行 1000 次变量赋值 5.43
1750 页母版执行 10000 次变量赋值 17.39

内存占用测试(连续运行统计)

连续运行次数 累计内存占用 说明
1 0.050590515136719 M 首次运行需加载全部类文件
2 0.050949096679688 M
3 0.050949096679688 M
4 0.050949096679688 M
5 0.050949096679688 M
6 0.050949096679688 M
7 0.050949096679688 M
8 0.050949096679688 M

更多实用案例

  • 基础综合应用示例
  • 带富文本样式的段落处理
  • 图片嵌入与尺寸控制
  • 区块批量克隆与差异化填充
  • 多种区块标记方式(有效规避批注无法识别问题)
  • 兼容 PHPWord 的区块内容写入方案
  • 目录(TOC)嵌入表格单元格
  • 表格合并单元格操作

源码仓库地址:点击下载

相关推荐
我要咨询做网站
成功案例
建站流程
  • 网站需
    求分析
  • 网站策
    划方案
  • 页面风
    格设计
  • 程序设
    计研发
  • 资料录
    入优化
  • 确认交
    付使用
  • 后续跟
    踪服务
  • 400 9868 577
    info#ilanqiao.cn
Hi,Are you ready?
准备好开始了吗?
那就与我们取得联系吧

咨询送礼现在提交,将获得兰乔电子商务策划专家免费为您制作
价值5880元《全网营销方案+优化视频教程》一份!
下单送礼感恩七周年,新老用户下单即送创业型空间+域名等大礼
24小时免费咨询热线400 9868 577
合作意向表
您需要的服务
您最关注的地方
预算

直接咨询