2013-05-18 2 views
1

Я хочу знать температуру из города, используя Yahoo Wheater (xml), xpath и php. Это код, который я использую, но он не работает. Я могу получить элемент (описание), но не атрибут (температура), который я хочу.Получить атрибут xml в PHP

$xml = new DOMDocument(); 
$xml->load("http://weather.yahooapis.com/forecastrss?w=12818432&u=c"); 

$xpath = new DOMXpath($xml); 
$result = $xpath->query("//channel"); 

foreach ($result as $value) { 
    //$weather = $value->getElementsByTagName("description"); 
    $weather = $value->getElementsByTagName("yweather:wind"); 
    $temp = $weather->getAttribute("chill"); 

    print $temp->item(0)->textContent; 
} 

ответ

1

Вы должны использовать getElementsByTagNameNS(), чтобы получить элементы в пространстве имен.

$ns_yweather = "http://xml.weather.yahoo.com/ns/rss/1.0"; 
$weer = $value->getElementsByTagNameNS($ns_yweather, "wind")->item(0); 
print $weer->getAttribute("chill"); 
Смежные вопросы