0

我目前正在尝试解析 MapQuest Traffic API,但是当我尝试显示事件时,什么都没有出现,如果我在 php 中执行“如果为空”,它会返回空。

这是代码:

    <?php
    $mysongs = simplexml_load_file("http://www.mapquestapi.com/traffic/v1/incidents?key=Fmjtd%7Cluuan1u2nh%2C2a%3Do5-96rw5u&callback=handleIncidentsResponse&boundingBox=$_GET[a], $_GET[b], $_GET[c], $_GET[d]&filters=construction,incidents&inFormat=kvp&outFormat=xml");
echo $mysongs->Incidents[0]->Incident[0]->fullDesc;
?>

我传递的参数:?a=33.352532499999995&b=-118.2324383&c=34.352532499999995&d=-117.2324383。

提前致谢!

4

1 回答 1

0

这里 simplexml_load_file 没有加载所有的 xml 数据,所以我创建了一个名为 test.xml 的 xml 文件,然后从 test.xml 加载数据。现在您可以打印您需要的数据。

<?php


  $a = $_GET['a'];
  $b = $_GET['b'];
  $c = $_GET['c'];
  $d = $_GET['d'];

   $xml_feed_url = 'http://www.mapquestapi.com/traffic/v1/incidents?key=Fmjtd|luuan1u2nh%2C2a%3Do5-96rw5u&callback=handleIncidentsResponse&boundingBox='.$a.','.$b.','.$c.','.$d.'&filters=construction,incidents&inFormat=kvp&outFormat=xml';
   $ch = curl_init();
   curl_setopt($ch, CURLOPT_URL, $xml_feed_url);
   curl_setopt($ch, CURLOPT_HEADER, false);
   curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
   $xml = curl_exec($ch);
   curl_close($ch);


            $xml2 = new SimpleXMLElement($xml); 

            $xml2->asXML("test.xml");
            $xml2->asXML();

    $mysongs = simplexml_load_file("test.xml"); 
    print_r($mysongs);      
?>
于 2012-12-19T04:36:39.787 回答