2013-08-02 175 views
0

我試圖從JSON數組中捕獲PHP中的所有對象,我需要將出現在[「元素」下的所有對象。所以如果我能這樣做的話:從JSON數組中獲取PHP中「組」的所有對象

1.)不知道對象的「名稱」,也不知道里面的內容。 2.)我想實現的是獲取Elements中的第一個對象值,然後獲取其中的「內容」,而不管名稱如何(可能有多個對象)

這是一個var_dump的JSON:

object(stdClass)#1 (1) { 
    ["Canvas"]=> 
    array(1) { 
     [0]=> 
     ["Elements"]=> 
      object(stdClass)#18 (2) { 
      ["textHolder2"]=> 
       object(stdClass)#19 (1) { 
       ["textContent"]=> 
        string(12) "Text to edit" 
       } 
      ["textHolder1"]=> 
       object(stdClass)#20 (1) { 
       ["textContent"]=> 
        string(12) "Text to edit" 
       } 
      } 
     } 
} 
} 

回答

0

使用foreach

$json = json_decode($input, true); 
$elems = $json['canvas']['Elements']; 

foreach($elems as $key => $value) { 
    echo "{$key} is an array/object:\n"; 
    echo var_dump($value); 
} 

,如果你需要知道密鑰是什麼內部$value,或者你可以另一個foreach循環,但我假設你至少會有一些什麼線索鍵可以在$value你可以使用array_keys()