从JSON数组中获取PHP中“组”的所有对象

时间:2013-08-02 07:17:24

标签: php json

我正在尝试从JSON数组中捕获PHP中的所有对象,我需要在[“Elements”]下显示的所有对象。那么,如果我:

,这怎么可能呢?

1。)不知道对象的“名称”,也不知道其中的内容。 2.)我想要实现的是获取Elements中的第一个对象值,然后获取其中的“内容”,而不管名称(可能有多个对象)

这是JSON的var_dump:

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"
              }
          }
      }
 }
 }

1 个答案:

答案 0 :(得分: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循环,你可以使用array_keys(),但我假设你至少会知道{{{{{{ 1}}。