我的一个客户正在使用库 odtphp,因为从 PHP 5.2.8 升级到 PHP 5.4.14 存在一个包含扩展字符的段的问题(例如:é à ô 等)。
他们的wiki上没有关于兼容性的信息
在库中直接搜索后,我已经能够通过替换这些行来找到如何解决编码问题:
odf.php:85
$value = $encode ? htmlspecialchars($value) : $value;
和
$value = $encode ? htmlspecialchars($value,ENT_COMPAT | ENT_HTML401,"ISO-8859-1") : $value;
odf.php:214
if (preg_match($reg, html_entity_decode($this->contentXml), $m) == 0) {
和
if (preg_match($reg, html_entity_decode($this->contentXml,ENT_COMPAT | ENT_HTML401,"ISO-8859-1"), $m) == 0) {
段.php:141
$value = $encode ? htmlspecialchars($value) : $value;
和
$value = $encode ? htmlspecialchars($value,ENT_COMPAT | ENT_HTML401,"ISO-8859-1") : $value;
希望这会对某人有所帮助!