Mit PHPs SimpleXML auf XML-Namespaces zugreifen

Das klappt tatsächlich, auch wenn der Code damit nicht mehr so simpel wird.

XML

<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:georss="http://www.georss.org/georss">
<channel>
foursquare checkin history for Mario A.
<description>foursquare checkin history for Mario A.</description>
https://foursquare.com/emeidi
<atom:link type="application/rss+xml" rel="self" href="https://feeds.foursquare.com/history/.rss" />
<item>
Migros
<description>@ Migros</description>
https://foursquare.com/emeidi/checkin/
<pubDate>Fri, 27 Sep 13 17:22:13 +0000</pubDate>
<guid isPermaLink="false"></guid>
<georss:point>46.9490403456011 7.440057740911321</georss:point>
</item>
<item>
Bahnhof Bern
<description>@ Bahnhof Bern</description>
https://foursquare.com/emeidi/checkin/
<pubDate>Fri, 27 Sep 13 17:21:57 +0000</pubDate>
<guid isPermaLink="false"></guid>
<georss:point>46.94901360281286 7.440102388543716</georss:point>
</item>
<item>
...

PHP

...
foreach($xml->channel->item as $item) {
$coords = $item->children('http://www.georss.org/georss')->point;
}
...

Via: SimpleXML and namespaces