我有一个XML元素,其中有一个url作为其中一个孩子,例如:
http://maps.google.com/FortWorth&Texas,more+url;data
解析时,我遇到两个问题:
1.)(& )符号会破坏整个解析,除非替换为& amp (打破网址)
2.)逗号(,)尝试将我的解析器发送到下一个子节点,从而导致网址不完整。
我该怎么做才能解决这个问题? 我正在使用Javascript和PHP。
答案 0 :(得分:12)
用&
替换&
不应该破坏网址。你遗漏了吗??
更好的解决方案是将它包装在CDATA标签中:
<![CDATA[ http://maps.google.com/FortWorth&Texas,more+url;data ]]>
它告诉XML解析器将其视为文本而不解析&amp;。
答案 1 :(得分:1)
某些字符在XML中无效 - 您需要在xml文档中“转义”这些字符。
这些字符及其“转义”版本为:
> >
< <
& &
' '
" "