3v4l.org

run code in 300+ PHP versions simultaneously
<?php $json = '[ { "name": "A", "children": [ { "name": "B", "children": [ { "name": "C" }, { "name": "D", "children": [ { "name": "E" }, { "name": "F" } ] } ] }, { "name": "G" } ] }, { "name": "H" } ]'; $json = json_decode($json, true); function getArrayValuesRecursively(array $array){ $values = []; foreach ($array as $value) { if (is_array($value)) { $values = array_merge( $values, getArrayValuesRecursively($value) ); } else { $values[] = ['name' => $value]; } } return $values; } echo json_encode(getArrayValuesRecursively($json));

preferences:
23.43 ms | 406 KiB | 5 Q