2010-11-20 75 views
0

的元素,我有以下查詢:如何找到多維數組

$simplequery = array('type'=>'/travel/travel_destination', 
        'id'=>$_POST["hcity"], 
        'name' => null, 
        'tourist_attractions' => array(
         array('/common/topic/article'=>array(array('guid'=>null)), 
           '/common/topic/image'=>array(array('guid'=>null)) 
         ) 
        ) 
); 

$queryarray = array('q1' => array('query' => $simplequery)); 
$jsonquerystr = json_encode($queryarray); 
//echo $jsonquerystr; 
#run the query 
$apiendpoint = "http://www.freebase.com/api/service/mqlread?queries"; 
$ch = curl_init(); 
curl_setopt($ch, CURLOPT_URL, "$apiendpoint=$jsonquerystr"); 
curl_setopt($ch, CURLOPT_HEADER, 0); 
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); 
$jsonresultstr = curl_exec($ch); 
curl_close($ch); 
$temp = str_replace("#", "", $jsonresultstr); 
$resultarray = json_decode($temp, true); 

我想借此「/普通/主題/圖像」陣列的GUID字符串。這是一個多維數組,我無法找到如何去做。 我試圖書面方式

$result = $resultarray["q1"]["result"]["tourist_atractions"]['/common/topic/image']; 

,但它無法正常工作。你能幫我麼?謝謝

+0

您可以添加一個'print_r($ resultarray)',以便我們可以看到數組輸出的格式? – Eric 2010-11-20 20:51:32

+0

您是否嘗試過使用print_r($ resultarray);在最後一行之後檢查數組是如何返回的?這會讓你的事情更清晰。 – Rodrigo 2010-11-20 20:51:36

+0

您的「吸引力」拼寫錯誤是複製/粘貼錯誤還是存在於您的實際代碼中? – Alex 2010-11-20 20:53:36

回答

0
$result = $resultarray["q1"]["result"]["tourist_attractions"]['/common/topic/image'][0]['guid']; 
+0

最後主要問題是「景點」這個詞的拼寫錯誤。 – artemis 2010-11-21 00:25:39

+0

非常感謝 – artemis 2010-11-21 00:26:12

+0

@artemis沒問題。你會將此標記爲接受的答案嗎? – Alex 2010-11-21 00:36:17

0

第一次猜測?您拼錯「景點」:

$resultarray["q1"]["result"]["tourist_attractions"]['/common/topic/image'];