<?php
$array = [
'leafNode1' => null,
'leafNode2' => (object)['one' => 1],
[
'leafNode3' => true,
'leafNode4' => (object)['two' => 2]
],
[[[[[[[(object)['foo' => (object)['bar' => 'baz']]]]]]]]],
['subarray1' => ['obj1' => (object)['subarray2' => [(object)['obj2' => []]]]]]
];
$result = [];
array_walk_recursive(
$array,
function ($leafNode, $key) use(&$result) {
$result[$key] = $leafNode;
}
);
var_export($result);
- Output for 7.4.0 - 7.4.33, 8.0.1 - 8.0.30, 8.1.0 - 8.1.28, 8.2.0 - 8.2.19, 8.3.0 - 8.3.7
- array (
'leafNode1' => NULL,
'leafNode2' =>
(object) array(
'one' => 1,
),
'leafNode3' => true,
'leafNode4' =>
(object) array(
'two' => 2,
),
0 =>
(object) array(
'foo' =>
(object) array(
'bar' => 'baz',
),
),
'obj1' =>
(object) array(
'subarray2' =>
array (
0 =>
(object) array(
'obj2' =>
array (
),
),
),
),
)
preferences:
97.37 ms | 403 KiB | 123 Q