1. まず、json を配列にデコードし、json_decode 関数を使用します。2 番目のパラメーターを追加する必要があることに注意してください。追加しないとオブジェクトが返されます。次のステップは再帰です。これは、1 つずつ実行するだけの最も単純な再帰です。
2. 以下は完全なコードです:
$data= json_decode($str,true); $options = getChildren($data); function getChildren($parent,$deep=0) { foreach($parent as $row) { $data[] = array("id"=>$row['id'], "name"=>$row['name'],"pid"=>$row['parentid'],'deep'=>$deep); if ($row['childs']) { $data = array_merge($data, getChildren($row['childs'], $deep+1)); } } return $data; } foreach ($options as $row) { echo str_pad("",$row['deep']*3, "-",STR_PAD_RIGHT); echo $row['name']; } ?>
推奨チュートリアル: PHP ビデオ チュートリアル
以上がPHP の再帰的無限分類が遅い場合はどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。