编码XML& PHP(DOM) - ISO 8859-15(重音字符)

时间:2012-02-29 07:47:58

标签: php xml character-encoding

所以我有这个脚本读取xml,修改选定的节点值并保存它。 xml文件有<?xml version="1.0" encoding="ISO-8859-15"?>,无法更改。

这些节点值可能有重音字符(斯堪的纳维亚语ä,ö,å)。

如果保存已修改的节点值,则会出现问题,如果它们具有这些重音字符。如果他们拥有它们,则会仅扫描xml上的所有现有数据<?xml version="1.0"?>

如何在没有这样做的情况下保存它,同时读取它而不会像“à- ”那样搞砸了?

1 个答案:

答案 0 :(得分:0)

引用the manual:“DOM扩展使用UTF-8编码。使用utf8_encode()和utf8_decode()来处理ISO-8859-1编码的文本或其他编码的Iconv。“

作为一种变通方法,您还可以考虑用数字引用替换所有出现的非ASCII字符,例如&#xe4;的“ä”。这将使数据“编码安全”。