Parse XML with PHP that contains namespaces
I am trying to parse an XML file in PHP that looks like:
<post dsq:id="##Edited out##">
<id />
<message>##Edited out##</message>
<createdAt>2010-07-09T16:08:44Z</createdAt>
<author>
<email>##Edited out##</email>
<name>##Edited out##</name>
<isAnonymous />
</author>
<ipAddress>##Edited out##</ipAddress>
<thread dsq:id="##Edited out##" />
</post>
<post dsq:id="##Edited out##">
<id开发者_Python百科 />
<message>##Edited out##</message>
<createdAt>2010-07-09T16:10:07Z</createdAt>
<author>
<email>##Edited out##</email>
<name>##Edited out##</name>
<isAnonymous />
</author>
<ipAddress>##Edited out##</ipAddress>
<thread dsq:id="##Edited out##" />
</post>
I am using simple xml to parse it like this:
$xml = simplexml_load_file('disqus.xml');
foreach ( $xml->post as $post )
{
echo $post['dsq:id'];
}
However, I am unable to get the id attribute from the post object here:
<post dsq:id="##Edited out##">
Any information on how that could be retrieved would be greatly appreciated.
$xml = simplexml_load_file('disqus.xml');
foreach ( $xml->post as $post )
{
$dsq = $post->children('disqus.com/disqus-internals'); //should this not have http://disqus.com/disqus-internals?
echo $dsq->id;
}
The one you are using, w3.org/2001/XMLSchema-instance
, is for the xsi namespace.
精彩评论