Heim >Backend-Entwicklung >PHP-Tutorial >Wie kann ich PHP-Punktnotationszeichenfolgen in mehrdimensionale Arrays konvertieren?
Konvertieren der Punktnotation in mehrdimensionale Arrays in PHP
In PHP ist es möglich, eine mehrdimensionale Array-Struktur mithilfe der Punktnotation wie „dies“ zu emulieren .das.andere". Die Verwaltung und Bearbeitung kann jedoch umständlich sein. Um dieses Problem anzugehen, wird nach einer Methode gesucht, um die Punktnotation in ein mehrdimensionales Array umzuwandeln.
Eine vorgeschlagene Lösung verwendet die folgende Funktion:
function assignArrayByPath(&$arr, $path, $value, $separator='.') { $keys = explode($separator, $path); foreach ($keys as $key) { $arr = &$arr[$key]; } $arr = $value; }
Diese Funktion iteriert durch die durch Punkte getrennten Schlüssel. Erstellen Sie dabei alle fehlenden Schlüssel und weisen Sie schließlich den gewünschten Wert zu.
Zum Beispiel der folgende Punkt Notation:
s1.t1.column.1 = size:33%
Kann wie folgt in ein mehrdimensionales Array konvertiert werden:
assignArrayByPath($source, 's1.t1.column.1', 'size:33%'); echo $source['s1']['t1']['column']['1']; // Output: size:33%
Das obige ist der detaillierte Inhalt vonWie kann ich PHP-Punktnotationszeichenfolgen in mehrdimensionale Arrays konvertieren?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!