PHP 历遍 Json 子节点的方法
对 Json 是又爱又恨,不太会用 PHP 解析,研究了半天,终于找到点门道。
1 2 3 4 5 6 7 8 9 10 11 12 13 |
<?php $a='[{"id":1},{"id":2},{"id":3},{"id":4},{"id":5},{"id":6},{"id":8,"children":[{"id":9},{"id":7}]}]'; $json=json_decode($a); foreach($json as $item){ if (isset($item->children)){ echo $item->id; foreach($item->children as $sub_item){ echo $sub_item->id; } }else{ echo $item->id; } } |
这种做法必须知道子节点的名称,不然就只能逐个 node 去历遍了。