<?php
$i_have_this = [
"Base/child" => [
[
"filename" => "child-1",
"last_modified" => "29/01/2020"
],
[
"filename" => "child-2",
"last_modified" => "29/01/2020"
],
[
"filename" => "child-3",
"last_modified" => "29/01/2020"
]
],
"Base/child/grandChild1" => [
[
"filename" => "grandChild1-1",
"last_modified" => "29/01/2020"
]
],
"Base/child/grandChild2" => [
[
"filename" => "grandChild2-1",
"last_modified" => "29/01/2020"
],
[
"filename" => "grandChild2-2",
"last_modified" => "29/01/2020"
],
[
"filename" => "grandChild2-3",
"last_modified" => "29/01/2020"
],
[
"filename" => "grandChild2-4",
"last_modified" => "29/01/2020"
],
[
"filename" => "grandChild2-5",
"last_modified" => "29/01/2020"
]
]
];
$want_this = [];
foreach($i_have_this as $path => $value) {
$temp = &$want_this;
foreach (explode('/', $path) as $key) {
$temp = &$temp[$key];
}
$temp = $value;
}
print_r($want_this);
- Output for 7.2.0 - 7.2.33, 7.3.0 - 7.3.33, 7.4.0 - 7.4.33, 8.0.0 - 8.0.30, 8.1.0 - 8.1.28, 8.2.0 - 8.2.18, 8.3.0 - 8.3.4, 8.3.6
- Array
(
[Base] => Array
(
[child] => Array
(
[0] => Array
(
[filename] => child-1
[last_modified] => 29/01/2020
)
[1] => Array
(
[filename] => child-2
[last_modified] => 29/01/2020
)
[2] => Array
(
[filename] => child-3
[last_modified] => 29/01/2020
)
[grandChild1] => Array
(
[0] => Array
(
[filename] => grandChild1-1
[last_modified] => 29/01/2020
)
)
[grandChild2] => Array
(
[0] => Array
(
[filename] => grandChild2-1
[last_modified] => 29/01/2020
)
[1] => Array
(
[filename] => grandChild2-2
[last_modified] => 29/01/2020
)
[2] => Array
(
[filename] => grandChild2-3
[last_modified] => 29/01/2020
)
[3] => Array
(
[filename] => grandChild2-4
[last_modified] => 29/01/2020
)
[4] => Array
(
[filename] => grandChild2-5
[last_modified] => 29/01/2020
)
)
)
)
)
- Output for 8.3.5
- Warning: PHP Startup: Unable to load dynamic library 'sodium.so' (tried: /usr/lib/php/8.3.5/modules/sodium.so (libsodium.so.23: cannot open shared object file: No such file or directory), /usr/lib/php/8.3.5/modules/sodium.so.so (/usr/lib/php/8.3.5/modules/sodium.so.so: cannot open shared object file: No such file or directory)) in Unknown on line 0
Array
(
[Base] => Array
(
[child] => Array
(
[0] => Array
(
[filename] => child-1
[last_modified] => 29/01/2020
)
[1] => Array
(
[filename] => child-2
[last_modified] => 29/01/2020
)
[2] => Array
(
[filename] => child-3
[last_modified] => 29/01/2020
)
[grandChild1] => Array
(
[0] => Array
(
[filename] => grandChild1-1
[last_modified] => 29/01/2020
)
)
[grandChild2] => Array
(
[0] => Array
(
[filename] => grandChild2-1
[last_modified] => 29/01/2020
)
[1] => Array
(
[filename] => grandChild2-2
[last_modified] => 29/01/2020
)
[2] => Array
(
[filename] => grandChild2-3
[last_modified] => 29/01/2020
)
[3] => Array
(
[filename] => grandChild2-4
[last_modified] => 29/01/2020
)
[4] => Array
(
[filename] => grandChild2-5
[last_modified] => 29/01/2020
)
)
)
)
)
preferences:
224.88 ms | 409 KiB | 179 Q