我需要将html taged段转换为word文档。
例如我有这样的文字
<ul><li>One</li><li>Two</li><li>Three</li></ul>
将此转换为
在使用phpword
的单词中,或者在xml
php
格式
答案 0 :(得分:1)
如果需要显示静态列表,请参见此处: https://github.com/PHPOffice/PHPWord/blob/develop/docs/elements.rst#lists
如果你想将html字符串转换为Word列表,那么你需要使用正则表达式和preg_match
<?php
// New Word Document
$phpWord = new PhpOffice\PhpWord\PhpWord();
// New portrait section
$section = $phpWord->addSection();
//Extract and add all options
$html = '<ul><li>One</li><li>Two</li><li>Three</li></ul>';
preg_match_all('/<li>(.+?)<\/li>/i', $html, $matches);
foreach ($matches[1] as $option) {
$section->addListItem('$option', 0);
}
// Save File
$objWriter = \PhpOffice\PhpWord\IOFactory::createWriter($phpWord, 'Word2007');
$objWriter->save('ListItem.docx');