Heim >Backend-Entwicklung >PHP-Tutorial >Wie kann ich PHP-Punktnotationszeichenfolgen in mehrdimensionale Arrays konvertieren?

Wie kann ich PHP-Punktnotationszeichenfolgen in mehrdimensionale Arrays konvertieren?

Linda Hamilton
Linda HamiltonOriginal
2024-11-30 07:32:14187Durchsuche

How Can I Convert PHP Dot Notation Strings into Multidimensional Arrays?

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!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn