0

我使用相同的代码和相同的测试 URL。我的 localhost 和我的公共 Web 服务器都运行 Ubuntu,它们都启用了 Simplexml 支持并启用了 Schema 支持。我的本地主机运行 PHP 版本 5.4.6-1ubuntu1.1,公共 Web 服务器运行 PHP 版本 5.3.19。

生成错误的代码行是一个简单的构造函数:

$x = new SimpleXmlElement($file, NULL, TRUE);

它位于 try-catch 块中,因为它有一个简单的目的来验证 RSS 文件(具有讽刺意味的是它不起作用)。

在本地主机上很好,而在网络服务器上我收到错误消息

警告:SimpleXMLElement::__construct() [simplexmlelement.--construct]:解析器错误:开始和结束标记不匹配:META 第 1 行和开头 ...

这可能是什么原因?

我应该注意,我测试过的这个特定的 RSS 频道并没有在 W3 验证器上验证。所以我想我的问题必须是我的本地主机如何使用它?(在构造函数之外,它可以很好地读取项目并与它们一起工作)。

对于 5.3.19 之后的版本,我在 PHP 更改日志中发现的唯一与 SimpleXml 相关的是:

已实现 FR #55218(从当前节点获取命名空间)。

但我认为这与这种特殊情况没有任何关系……是吗?

4

0 回答 0