archfz/word-template

使用PHP从Word模板生成Word文档。

安装: 187

依赖项: 0

建议者: 0

安全: 0

星标: 3

关注者: 3

分支: 0

开放问题: 0

语言:C++

dev-master 2017-04-07 11:10 UTC

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

贡献

为了更好地理解或扩展功能,您可以在这里了解更多