Page 1 of 1

Wie konvertiere ich ein flaches Array, das einen Schlüsselpfad darstellt, in ein mehrdimensionales Array, das bei einem

Posted: 23 Jan 2025, 05:34
by Guest
Ich habe eine Reihe von Schlüsselpfaden wie diesen:

Code: Select all

 array('frank', 'john', 'dan')
und ich muss daraus ein
erstellen

Code: Select all

array(
'frank' => array(
'john' => array(
'dan' => array()
)
)
)
Es muss dynamisch sein, da ich nicht immer weiß, wie viele Schlüssel sich im anfänglichen Array befinden
Ich habe einiges ausprobiert, muss aber zugeben dass ich ratlos bin.
Das Problem scheint zu sein, dass ich dem Array keine variable Anzahl von Dimensionen zuweisen kann, während ich der großen Array-Variable jederzeit Array-Schlüssel zuweise muss der Wurzel der Variablen zugewiesen werden.

Code: Select all

$keys = array('base', 'frank', 'john');
foreach ($keys as $k => $key) {
if ($k > 0) {
$largearray[$keys[$k-1]] = array($key => array());
} elseif ($k>1) {
$largearray = array_push($largearray[$keys[$k - 2]], array($keys[$k - 1] => array($key => array())));
}
}