警告:simplexml_load_file()

时间:2012-09-13 17:25:50

标签: php simplexml

我有这段代码

<?php

$url = "_configurations/right_sidebar_links.xml";
$xml = simplexml_load_file($url);

foreach($xml->links as $links)
{
    echo "<li>";
    echo "<a href='".$links->url."'>";
    echo $links->name."</a></li>";
}

?>

从另一个文件加载xml链接,它对没有任何奇怪字符的链接工作正常,但是当你输入带有奇怪字符的长链接时,它会出现错误,说明

Warning: simplexml_load_file() [function.simplexml-load-file]: _configurations/right_sidebar_links.xml:17: parser error : EntityRef: expecting ';' in .../includes/loadLinks.php on line 8

任何帮助都会非常感激。

这是一个链接的例子

http://www.exampe.com/gp/product/B007RT6OZW/ref=as_li_ss_tl?ie=UTF8&camp=1789&creative=390957&creativeASIN=B007RT6OZW&linkCode=as2&tag=backpaininfor-20

谢谢!

1 个答案:

答案 0 :(得分:1)

XML文件的内容无效。确保它已正确编码(即&&amp;)和/或必要时使用CDATA标记。

如果您在现代浏览器中打开XML文件,他们通常会给您一个详细的答案,说明错误的位置(行和字符)。

另请参阅this hack