PhpOffice \ PhpWord-TemplateProcessor添加列表

时间:2019-06-25 11:38:46

标签: php phpoffice

我正在使用PhpOffice库。有什么方法可以用有序列表替换docx文件中的变量?

使用templateProcessor方法setComplexValue可以添加代码文本

$title = new \PhpOffice\PhpWord\Element\TextRun();
$title->addText('This title has been set ', array('bold' => true, 'italic' => true, 'color' => 'blue'));
$title->addText('dynamically', array('bold' => true, 'italic' => true, 'color' => 'red', 'underline' => 'single'));
$templateProcessor->setComplexBlock('title', $title);

所以我为新的List尝试了此代码,但是它不起作用。

$list = new \PhpOffice\PhpWord\Element\ListItem();
$list->addListItem('List item 1');
$list->addListItem('List item 2');
$templateProcessor->setComplexValue('list', $list);

有什么想法吗?谢谢

2 个答案:

答案 0 :(得分:0)

您应该改用setComplexBlock

答案 1 :(得分:0)

我也没有找到解决方案,我已经用文本和换行符完成了。这个解决方案可以满足我的需求。希望有人也分享列表解决方案。

$text = new \PhpOffice\PhpWord\Element\TextRun();
$text->addText('* List item 1');
$text->addTextBreak(1);                
$text->addText('* List item 2');
$text->addTextBreak(1);
$templateProcessor->setComplexValue('list', $list);