2011-04-01 3 views
3

Essayer d'analyser en latitude/longitude d'un google maps flux rss:PHP analyse d'un espace de noms georss avec simpleXML

$file = "http://maps.google.com/maps/ms?ie=UTF8&hl=en&vps=1&jsv=327b&msa=0&output=georss&msid=217909142388190116501.000473ca1b7eb5750ebfe"; 
$xml = simplexml_load_file($file);  
$loc = $xml->channel->item; 
echo $loc[0]->title; 
echo $loc[0]->point; 

Le titre apparaît bien, mais le point ne me donne rien. Chaque noeud ressemble à ceci:

<item> 
    <guid isPermaLink="false">0004740950fd067393eb4</guid> 
    <pubDate>Sun, 20 Sep 2009 21:47:49 +0000</pubDate> 
    <title>Big Wong King Restaurant</title> 
    <description><![CDATA[<div dir="ltr">$4.99 full meals!</div>]]></description> 
    <author>neufuture</author> 
    <georss:point> 
     40.716236 -73.998413 
    </georss:point> 
    <georss:elev>0.000000</georss:elev> 
    </item> 

Répondre

1

Essayez ceci:

<?php 
    $file = "http://maps.google.com/maps/ms?ie=UTF8&hl=en&vps=1&jsv=327b&msa=0&output=georss&msid=217909142388190116501.000473ca1b7eb5750ebfe"; 
    $xml = simplexml_load_file($file); 
    $loc = $xml->channel->item; 
    foreach ($loc->children('http://www.georss.org/georss') as $geo) { 
     echo $geo; 
    } 
?> 

Commander ce Zend article for working with namespaces in XML

+0

lien de l'article Zend est cassé – Nate