simplexml无法像这样解析xml吗?
问题描述:
有更强的参考吗?simplexml无法像这样解析xml吗?
<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:nutch="http://www.nutch.org/opensearchrss/1.0/" xmlns
:opensearch="http://a9.com/-/spec/opensearchrss/1.0/" version="2.0">
<channel>
<title>Nutch: "php Developers" notdirectory:1 </title>
<description>Nutch search results for query: "php Developers" notdirectory:1 </description>
<opensearch:totalResults>2</opensearch:totalResults>
<opensearch:startIndex>0</opensearch:startIndex>
<opensearch:results>2</opensearch:results>
<opensearch:itemsPerPage>10</opensearch:itemsPerPage>
<item>
<title/>
</item>
<item>
<title/>
</item>
</channel>
</rss>
答
这不是一个有效的XML文件。
根据 指定的XML名称空间规范,不允许使用空前缀。
命名空间前缀':'未定义。
一次我清理了opensearch
命名空间定义(除去多余的引号和换行符)都看了好:
xmlns:opensearch="http://a9.com/-/spec/opensearchrss/1.0/"
答
如果这是你确切的代码,它可能有一些做的在第一行
改变它断行,这样xmlns
是旁边:opensearch
<rss
xmlns:nutch="http://www.nutch.org/opensearchrss/1.0/"
xmlns:opensearch="http://a9.com/-/spec/opensearchrss/1.0/"
version="2.0"
>
当你无法指定失败的方式时,总是一个好习惯。你有错误吗?错误信息是什么?你是否得到了与你预期不同的结果?那么你期望的是什么?你得到了什么?等。 正如你已经得到的两个答案所指出的,你的文档没有任何错误,除了在命名空间声明中间的换行符,如果你改正了文档的格式,否则它不会被修改,这意味着它是不是XML。 – 2009-06-10 08:36:55