Heim >Backend-Entwicklung >PHP-Tutorial >Wie konvertiert man mehrdimensionale PHP-Arrays mit Punktnotationsschlüsseln in 2D-Arrays?
Mehrdimensionale PHP-Arrays in 2D-Arrays mit Punktnotationsschlüsseln konvertieren
Das Reduzieren mehrdimensionaler PHP-Arrays in 2D-Arrays mit Punktnotationsschlüsseln kann von Vorteil sein verschiedene Szenarien. Es ermöglicht Ihnen den nahtlosen Zugriff auf verschachtelte Array-Werte mithilfe der Punktnotation, was die Lesbarkeit und Wartbarkeit des Codes verbessert.
Rekursive Funktion zum Konvertieren verschachtelter Arrays
Glücklicherweise bietet PHP eine rekursive Funktion Funktion, die diese Konvertierung elegant erreichen kann:
<code class="php">$result = array(); $ritit = new RecursiveIteratorIterator(new RecursiveArrayIterator($myArray)); foreach ($ritit as $leafValue) { $keys = array(); foreach (range(0, $ritit->getDepth()) as $depth) { $keys[] = $ritit->getSubIterator($depth)->key(); } $result[join('.', $keys)] = $leafValue; }</code>
Erklärung:
Ausgabe:
Diese Funktion generiert das gewünschte 2D-Array mit Punktnotationstasten:
<code class="php">$newArray = array( 'key1' => 'value1', 'key2.subkey' => 'subkeyval', 'key3' => 'value3', 'key4.subkey4.subsubkey4' => 'subsubkeyval4', 'key4.subkey4.subsubkey5' => 'subsubkeyval5', 'key4.subkey5' => 'subkeyval5' );</code>
Das obige ist der detaillierte Inhalt vonWie konvertiert man mehrdimensionale PHP-Arrays mit Punktnotationsschlüsseln in 2D-Arrays?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!