逃脱''使用PHPWord填写docx文档时

时间:2015-11-19 14:26:39

标签: regex string escaping phpword phpoffice

我正在构建一个必须填写docx文档的Web应用程序。我正在使用PHPWord提供的TemplateProcessor,它接受文档上的特定钩子并用给定的字符串替换它。我遇到的问题是在字符串中"&"正在展示 - 由于缺少&#39 ;;'而文件被破坏。

我用来清理字符串的函数是

$string = trim(html_entity_decode($string));
$string = strip_tags($string);
$string = trim(preg_replace('/\s+/', ' ', $string));

有没有人知道如何逃避符号符号,这样文件就不会被破坏?

1 个答案:

答案 0 :(得分:3)

当然:见this HTML Entity chart

$str = preg_replace( '/&/', '&', $str );

但是,在您的情况下,最好使用htmlspecialchars添加此行:

$str = htmlspecialchars( $str );