SimpleXMLElement错误但xml有效

时间:2011-09-01 08:24:51

标签: php simplexml

这是错误:

[01-Sep-2011 08:15:01] PHP警告:SimpleXMLElement :: __ construct()[< a h ref ='simplexmlelement .-- construct'> simplexmlelement .-- construct]:../ domain / feed -yself-tips.php:1:解析器错误:开始标记期望,'<'在第135行的/home/domain/public_html/mergedrss.php中找不到

[01-Sep-2011 08:15:01] PHP警告:SimpleXMLElement :: __ construct()[< a h ref ='simplexmlelement .-- construct'> simplexmlelement .-- construct]:1f45 in /home/domain/public_html/mergedrss.php 135行

[01-Sep-2011 08:15:01] PHP警告:SimpleXMLElement :: __ construct()[< a h ref ='simplexmlelement .-- construct'> simplexmlelement .-- construct]:^ in /home/domain/public_html/mergedrss.php 135行

[01-Sep-2011 08:15:01] PHP致命错误:在/home/domain/public_html/mergedrss.php:135中,消息'异常'消息'字符串无法解析为XML' p>

堆栈跟踪: #0 /home/domain/public_html/mergedrss.php(135): SimpleXMLElement->__construct('.../domain...', 0, true) #1 /home/domain/public_html/mergedrss.php(57): MergedRSS->__fetch_rss_from_url('.../domain...') #2 /home/domain/public_html/feed.php(21): MergedRSS->export(false, true, 15) #3 {main} thrown in /home/domain/public_html/mergedrss.php on line 135

1 个答案:

答案 0 :(得分:6)

如果您确定xml格式正确,导致此错误的两个最常见的事情如下:

A)为simplexmlelement提供文件名而不是字符串。

// For files/urls use the following.
// See: http://www.php.net/manual/en/function.simplexml-load-file.php
$xml = simplexml_load_file('example.xml');

// For xml strings use the following.
// See: http://www.php.net/manual/en/function.simplexml-load-file.php
$xml = simplexml_load_string($exmpleString);

B)另一个常见问题是您尝试访问安全站点(https://)并且您的php副本没有在php.ini中启用openssl扩展。如果适用于您,请参阅谷歌获取解决此问题的帮助,因为解决方案因您在Linux或Windows服务器上的不同而有所不同。

如果没有您提供的更多信息,例如源xml和代码,您使用的是关于我可以提供的所有帮助。

祝你好运:)