似乎PHPWord需要一个元素来插入\PhpOffice\PhpWord\Shared\Html::addHtml的输出。我想输出HTML字符串的内容制作成表格单元格,下面的例子:PHPWord将HTML读入表格单元格
//Example HTML
$html = '
Adding element via HTML
';$html .= '
Some well formed HTML snippet needs to be used
';$html .= '
With for example some1inline formatting1
';$html .= '
Unordered (bulleted) list:
';$html .= '
- Item 1
- Item 2
- Item 2.1
- Item 2.1
$html .= '
Ordered (numbered) list:
';$html .= '
- Item 1
- Item 2
$table = $section->addTable();
$target = $table->addRow()->addCell(10000)->addText();
\PhpOffice\PhpWord\Shared\Html::addHtml($target, $html);
的靶细胞仍然是空的,但我可以生成没有错误一个Word2007文档。我试过没有addText()调用,但生成的文档已损坏。
关于如何实现我的目标的任何建议?
编辑:上面的示例HTML确实与$target = $table->addRow()->addCell(10000)一起使用。我似乎在我使用的实际HTML中存在问题,一些标签似乎造成了问题。我已经剥离那些不是必需的,但现在已经结束了一个例外:
BadMethodCallException in AbstractContainer.php line 232:
Cannot add ListItem in TextRun.
这是奇怪,因为在工作示例HTML上面有列表项
+1
你有使用'$ html'变量而不是'$ htmlString'作为'addHtml'方法的第二个参数 –
+0
对不起,我在代码块中输入代码块,在我的示例代码中正确引用了变量。我已经更新了问题并增加了更多细节 –