0

我正在为我的学校网站开发当前天气和天气预报的天气预报。为此,我将使用 Yahoos RSS 天气预报。在这个 XML 文件中有一些值存储在属性中。我想用 PHP 解决这些问题。该文件可以在这里找到: http ://weather.yahooapis.com/forecastrss?w=12602818&u=c

XML 文件说明了以下行:

<rss xmlns:yweather="http://xml.weather.yahoo.com/ns/rss/1.0">

我想得到的价值如下:

<yweather:condition text="Partly Cloudy" code="30" temp="22" date="Wed, 12 Jun 2013 4:20 pm CEST"/>

例如,我想从这个 yweather:condition 接收“temp”。任何人都可以指导我如何使用 PHP 来完成这项工作吗?

4

1 回答 1

1
<?php
$doc = new DOMDocument();
$doc->load('http://weather.yahooapis.com/forecastrss?w=12602818&u=c');
$channel = $doc->getElementsByTagName("channel");
foreach($channel as $chnl){
    $item = $chnl->getElementsByTagName("item");
    foreach($item as $itemgotten){
        $curtemp = $itemgotten->getElementsByTagNameNS("http://xml.weather.yahoo.com/ns/rss/1.0","condition")->item(0)->getAttribute("temp");
        echo $curtemp;
    }
}
?>

这解决了问题!在这里找到答案: 如何在 PHP 中从 Yahoo Weather RSS 获取标签“<yweather:condition>”?

于 2013-06-13T23:10:13.627 回答