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 に答える