DOMDocument无法解析XML
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了DOMDocument无法解析XML相关的知识,希望对你有一定的参考价值。
我正在使用Zend_Feed_Atom
从网站获取提要但我收到此错误:
信息:
DOMDocument无法解析XML:DOMDocument :: loadXML()[domdocument.loadxml]:xmlParseEntityRef:实体中没有名称,行:827
我尝试了另一个网站,我没有错误。我想知道为什么我的特定页面会出错,这个错误意味着什么。我在网上看过,它说这是编码的问题(我真的不明白)。
我的代码很简单,只是
if($type_feed == "atom"){
$nfeed = new Zend_Feed_Atom($address);
}elseif($type_feed == "rss"){
$nfeed= new Zend_Feed_RSS($address);
}
任何帮助都是极好的!谢谢!
答案
如果饲料被破坏然后它被破坏了,我们几乎无能为力。
解决这个问题的一种方法是使用@
来抑制错误。
if($type_feed == "atom"){
$nfeed = @new Zend_Feed_Atom($address);
}elseif($type_feed == "rss"){
$nfeed= @new Zend_Feed_RSS($address);
}
请注意,这并不理想,因为它会在调用new
时抑制所有内容。
另一答案
看看这里:http://www.php.net/manual/en/class.domdocument.php#domdocument.props.recover
所有权。启用恢复模式,即尝试解析非格式良好的文档。此属性不是DOM规范的一部分,并且特定于libxml。
你可以试试:
$dom = new DOMDocument();
$dom->recover = true;
以上是关于DOMDocument无法解析XML的主要内容,如果未能解决你的问题,请参考以下文章
如何在 PHP 中将 XML 字符串转换为 DOMDocument?