使用PHP解析具有相同标签的XML文档时遇到问题

时间:2012-01-16 16:34:26

标签: php xml xml-parsing

以下是来自yahoo Weather的片段,显示相同的标签

<yweather:forecast day="Mon" date="16 Jan 2012" low="-1" high="6" text="Clear" code="31"/>
<yweather:forecast day="Tue" date="17 Jan 2012" low="3" high="7" text="Mostly Sunny" code="34"/>

要访问第一个标记中的日期,我使用以下函数:

function get_forecast_day(SimpleXMLElement $xml) {

    // Pull forecast day
    $forecast['day'] = $xml->channel->item->children('yweather', TRUE)->forecast->attributes()->day;
    echo $forecast['day'] . ", ";

return $day;
}

任何想法如何在第二个标签中访问当天。显然,搜索“Tue”值并不好,因为这些值每天都会改变。

提前致谢。

1 个答案:

答案 0 :(得分:1)

->forecast可以用作数组,因此请使用索引为1的第二个元素:

$xml->channel->item->children('yweather', TRUE)->forecast[1]->attributes()->day