2016-08-03 61 views
0

我有這樣的對象:的Jquery的getJSON問題,簡化了答案

{"15":{"id":15,"name":"Termostato","wiring_pi_pin":11,"is_local":0}} 

對象來自這個selfwritten API

foreach ($gpio as $object) { 
    $temp['id'] = $object->id; 
    $temp['name'] = $object->name; 
    $temp['wiring_pi_pin'] = $object->wiring_pi_pin; 
    $temp['is_local'] = $object->is_local; 

    $api[$object->id] = $temp; 
} 

header('Content-Type: application/json'); 
echo json_encode($api); 

,我讀它(我需要key和value)使用此代碼:

$.getJSON(url, function(result) { 
    $.each(result, function(key,value) { 
     $.each(value, function(subkey,subvalue) { 
      console.log(subkey +' is ' + subvalue); 
     }); 
    }); 
}); 

是否有可能簡化PHP和或JS?

非常感謝您

+0

爲什麼不只是'echo json_encode($ gpio);'? –

回答

0

沒有必要將對象轉換爲關聯數組,因爲JSON表示他們通過相同的方式。所以你唯一需要做的就是創建一個使用$object->id作爲關鍵字的頂級關聯數組。

foreach ($gpio as $object) { 
    $api[$object->id] = $object; 
} 
header('Content-Type: application/json'); 
echo json_encode($api);