Heim > Backend-Entwicklung > PHP-Tutorial > Wie konvertiert man Punktsyntax effizient in mehrdimensionale Arrays in PHP?

Wie konvertiert man Punktsyntax effizient in mehrdimensionale Arrays in PHP?

DDD
Freigeben: 2024-11-29 20:32:10
Original
773 Leute haben es durchsucht

How to Efficiently Convert Dot Syntax to Multi-Dimensional Arrays in PHP?

Punktsyntax in mehrdimensionale Arrays in PHP umwandeln

Frage:

Wie kann Sie konvertieren Punktsyntax wie „this.that.other“ effizient in ein mehrdimensionales Array in PHP?

Antwort:

Um diese Konvertierung zu erreichen, sollten Sie die Implementierung der folgenden Funktion in Betracht ziehen:

function assignArrayByPath(&$arr, $path, $value, $separator='.') {
    $keys = explode($separator, $path);

    foreach ($keys as $key) {
        $arr = &$arr[$key];
    }

    $arr = $value;
}
Nach dem Login kopieren

Erklärung:

Diese Funktion führt die gewünschte Konvertierung durch, indem sie mithilfe des $separators die im Parameter $path angegebenen Schlüssel durchläuft als Trennzeichen. Für jeden Schlüssel greift es auf das entsprechende Element im $arr-Array zu und aktualisiert es. Schließlich wird der $-Wert dem Element der niedrigsten Ebene im Array zugewiesen.

Beispielverwendung:

Um die Funktionalität der Funktion zu demonstrieren, führen Sie den folgenden Code aus:

$arr = [];
assignArrayByPath($arr, 's1.t1.column.1', 'size:33%');

echo $arr['s1']['t1']['column']['1']; // Output: "size:33%"
Nach dem Login kopieren

Durch die Nutzung dieser Funktion können Sie die Punktsyntax effektiv in mehrdimensionale Arrays umwandeln und so die Handhabung und den Abruf komplexer Daten vereinfachen Strukturen.

Das obige ist der detaillierte Inhalt vonWie konvertiert man Punktsyntax effizient in mehrdimensionale Arrays in PHP?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
Erklärung dieser Website
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
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage