我正在从 smarty 模板中获取 HTML 并需要对其进行清理(只是想删除多余的空格,并很好地格式化/缩进 HTML),我正在使用 tidy 来执行以下操作:
$html = $smarty->fetch('foo.tmpl');
$tidy = new tidy;
$tidy->parseString($html, array(
'hide-comments' => TRUE,
'output-xhtml' => TRUE,
'indent' => TRUE,
'wrap' => 0
));
$tidy->cleanRepair();
return $tidy;
虽然这适用于英语,但多语言支持似乎打破了这一点。例如,我在 $html 中有阿拉伯字符,但整理后我得到了一些讨厌的编码:
هل أنت متأكد أنك تريد
是否有一个 tidy 设置可以格式化 HTML,但不考虑 HTML 本身?我看了这篇文章:PHP "pretty print" HTML (not Tidy)但似乎这行不通,因为我是从 smarty 那里获取我的 HTML 的。
任何建议表示赞赏。