PHP的SimpleXML命名空间问题

我试图得到入口 – >编号和条目 – >帽:参数 – >值的每个条目的RSS订阅….下面是我使用的代码。 它是显示正确的ID,但它不显示值字段….请帮助。

$url = 'http://alerts.weather.gov/cap/us.php?x=1'; $cap = simplexml_load_file($url); foreach($cap->entry as $entry){ echo 'ID: ', $entry->id, "\n"; echo 'VTEC: ', $entry->children('cap', true)->parameter->value, "\n"; echo "<hr>"; } 

我在这里先向您的帮助表示感谢。

<value>元素与<cap:parameter>不在同一个名称空间中:

 <cap:parameter> <valueName>VTEC</valueName> <value>/O.CON.KMPX.FL.W.0012.000000T0000Z-110517T1800Z/</value> </cap:parameter> 

所以你必须再次呼叫children()

代码( 演示 )

 $feed = simplexml_load_file('http://alerts.weather.gov/cap/us.php?x=1'); foreach ($feed->entry as $entry){ printf( "ID: %s\nVTEC: %s\n<hr>", $entry->id, $entry->children('cap', true)->parameter->children()->value ); }