如何处理XML中的URL中的特殊字符

时间:2010-12-02 23:37:00

标签: php javascript xml url special-characters

我有一个XML元素,其中有一个url作为其中一个孩子,例如:
http://maps.google.com/FortWorth&Texas,more+url;data

解析时,我遇到两个问题:
1.)(& )符号会破坏整个解析,除非替换为& amp (打破网址)
2.)逗号()尝试将我的解析器发送到下一个子节点,从而导致网址不完整。

我该怎么做才能解决这个问题? 我正在使用Javascript和PHP。

2 个答案:

答案 0 :(得分:12)

&替换&不应该破坏网址。你遗漏了吗??

更好的解决方案是将它包装在CDATA标签中:

<![CDATA[ http://maps.google.com/FortWorth&Texas,more+url;data ]]>

它告诉XML解析器将其视为文本而不解析&amp;。

答案 1 :(得分:1)

某些字符在XML中无效 - 您需要在xml文档中“转义”这些字符。

这些字符及其“转义”版本为:

>  &gt;
<  &lt;
&  &amp;
'   &apos;
"   &quot;