http://api.map.baidu.com/telematics/v3/weather?location=北京&output=xml&ak=gfPnxaaiPyNIhM7c3eZ1kmEL
這個得到XML 如何把currentCity節點的值賦給$city,迴圈檢索weather_data下的所有節點,賦值給數組 -》$date ,給$dayPictureUrl。
回複討論(解決方案)
大神在哪裡啊
$url = 'http://api.map.baidu.com/telematics/v3/weather?location=北京&output=xml&ak=gfPnxaaiPyNIhM7c3eZ1kmEL';$xml = simplexml_load_file($url);echo $city = $xml->xpath('//currentCity')[0];foreach($xml->xpath('//weather_data') as $r) { $date = (array)$r->date; $dayPictureUrl = (array)$r->dayPictureUrl;}var_dump($city, $date, $dayPictureUrl);
北京object(SimpleXMLElement)#2 (0) {}array(4) { [0]=> string(30) "周五(今天, 即時:24℃)" [1]=> string(6) "周六" [2]=> string(6) "周日" [3]=> string(6) "周一"}array(4) { [0]=> string(57) "http://api.map.baidu.com/images/weather/day/leizhenyu.png" [1]=> string(51) "http://api.map.baidu.com/images/weather/day/yin.png" [2]=> string(52) "http://api.map.baidu.com/images/weather/day/qing.png" [3]=> string(52) "http://api.map.baidu.com/images/weather/day/qing.png"}
$url = 'http://api.map.baidu.com/telematics/v3/weather?location=北京&output=xml&ak=gfPnxaaiPyNIhM7c3eZ1kmEL';$xml = simplexml_load_file($url);echo $city = $xml->xpath('//currentCity')[0];foreach($xml->xpath('//weather_data') as $r) { $date = (array)$r->date; $dayPictureUrl = (array)$r->dayPictureUrl;}var_dump($city, $date, $dayPictureUrl);
北京object(SimpleXMLElement)#2 (0) {}array(4) { [0]=> string(30) "周五(今天, 即時:24℃)" [1]=> string(6) "周六" [2]=> string(6) "周日" [3]=> string(6) "周一"}array(4) { [0]=> string(57) "http://api.map.baidu.com/images/weather/day/leizhenyu.png" [1]=> string(51) "http://api.map.baidu.com/images/weather/day/yin.png" [2]=> string(52) "http://api.map.baidu.com/images/weather/day/qing.png" [3]=> string(52) "http://api.map.baidu.com/images/weather/day/qing.png"}
Parse error: syntax error, unexpected '[', expecting ',' or ';'
My Code都是經實測驗證的!
不然也貼不出結果來
My Code都是經實測驗證的!
不然也貼不出結果來
不要發怒嘛,我這邊就是這個錯誤啊,貌似是括弧有問題
My Code都是經實測驗證的!
不然也貼不出結果來
OK了,貌似要分開寫的不能直接echo $city = $xml->xpath('//currentCity')[0];
可以這樣
$city = $xml->xpath('//currentCity');
echo $city[0];
那是你的問題呀
再說,錯誤資訊也得貼全了吧,不然別人如何判斷問題所在?
想來是你的 php 版本太低了
$city = $xml->xpath('//currentCity')[0];
改為
$city = current($xml->xpath('//currentCity'));
那是你的問題呀
再說,錯誤資訊也得貼全了吧,不然別人如何判斷問題所在?
想來是你的 php 版本太低了
$city = $xml->xpath('//currentCity')[0];
改為
$city = current($xml->xpath('//currentCity'));
菜鳥完全不會啊,還請版主見諒啊
foreach($xml->xpath('//weather_data') as $r) {$date = (array)$r->date;print_r($date);}
這樣子寫的話為什麼只有一行資料北京
2014-04-25
Array ( [0] => 周五(今天, 即時:24℃) )
應該周六,周日都出來的啊