我正在尝试使用simplexml来读取feedburner xml。我可以读取xml中的每个属性,但不能读取带有“:”的键。示例“feedburner:origLink”。当我对项目进行vardump时,那些带有:的键不显示。我不能像$ s-> item-> feedburner:origLink。
答案 0 :(得分:3)
您正在处理命名空间,而this Sitepoint article看起来是一个很好的长解释。或者,对于更简洁的版本,请查看here in the PHP SimpleXML
docs。
来自文档:
<?php
$xml = '<example xmlns:foo="my.foo.urn">
<foo:a>Apple</foo:a>
<foo:b>Banana</foo:b>
<c>Cherry</c>
</example>';
$sxe = new SimpleXMLElement($xml);
$kids = $sxe->children('foo');
var_dump(count($kids));
$kids = $sxe->children('foo', TRUE);
var_dump(count($kids));
$kids = $sxe->children('my.foo.urn');
var_dump(count($kids));
$kids = $sxe->children('my.foo.urn', TRUE);
var_dump(count($kids));
$kids = $sxe->children();
var_dump(count($kids));
?>
输出:
int(0)
int(2)
int(2)
int(0)
int(1)
答案 1 :(得分:1)
如果你很懒,不介意使用谷歌网络服务,这里有一个简单的方法来获取一个feedburner(或其他)feed的全部内容到php:
然后你可以只对它进行json_decode,它就在你的对象/数组中。