PHP 通过带有特殊字符的 xml 读取链接


PHP reading a link via xml with special characters

我有一个xml文件,可以通过用户输入链接的网页进行编辑。这看起来像

 <links>
    <link1 path="http://abc.def.com/abcd?id=2&ed=4" > </link1>
 <links>

我通过 php 阅读此 xml,然后添加一个按钮,该按钮将链接到此处。我目前正在做的是对 xml 字符串使用str_replace('&', '&amp;',),然后在提取的路径上使用str_replace('&amp;', '&',)。有没有更优雅的方法可以做到这一点?

您显示的不是XML文件。XML 文件不能包含未转义的 & 符号。

存储在 XML 中的 URL 应将 & 符号编码为 &amp; 。当您读取 XML 文件时,XML 解析器将显示未转义的文本,即& 。当然,如果您尝试在没有进行正确的 XML 解析的情况下读取 XML 文件,您将陷入混乱,这是您应得的。