archfz / word-template
使用PHP从Word模板生成Word文档。
dev-master
2017-04-07 11:10 UTC
Requires
- php: ^5.3.3 || ^7.0
This package is not auto-updated.
Last update: 2024-09-28 21:01:08 UTC
README
此包提供了一个用于从模板生成Word的二进制可执行文件和一个包装对象WordTemplate,以便在PHP中使用。此二进制文件是用C++编译的,使用了DocxFactory第三方库。
要求
使用依赖于系统可执行文件。这意味着需要某些库。
- GCC v5+ - 通过安装gcc,您应该可以获取到大多数这些库
- libstdc++ 6.0.21 - 在某些情况下您可能会遇到问题(如centos上);您可能遇到的问题与这个库有关,它需要手动配置(下载)
- PHP NTS(非线程安全)- 这是因为某些原因不允许线程安全的执行二进制文件
安装
composer require archfz/word-template:1.3.x-dev
注意:需要指定版本,否则将不会使用'package'分支。此分支更好,因为它不包含所有不必要的C++源文件和库。
使用方法
首先,您需要创建一个模板Word文档。这必须是.docx。
在其中,您创建带有大括号的占位符,如下所示:{占位符}。
您还可以为选定的内容创建书签,然后这些元素将是可复制的。例如,为上面的占位符创建书签并命名为'myplaceholder'。
对于上述描述的Word模板,您可以执行以下操作
use archfz/Word/WordTemplate $template = new WordTemplate('test.docx'); $template->paste('myplaceholder'); $template->setValue('placeholder', 'Put one here'); $template->paste('myplaceholder'); $template->setValue('placeholder', 'Put another different'); $template->compile();
这将生成包含两行的test_compiled.docx
Put one here
Put another different
贡献
为了更好地理解或扩展功能,您可以在这里了解更多。