Heim  >  Artikel  >  Backend-Entwicklung  >  Wie konvertiert man in PHP einen durch Punkte getrennten String in ein verschachteltes Array?

Wie konvertiert man in PHP einen durch Punkte getrennten String in ein verschachteltes Array?

Mary-Kate Olsen
Mary-Kate OlsenOriginal
2024-10-31 03:03:30913Durchsuche

How to Convert a Dot-Separated String into a Nested Array in PHP?

Einen String mit Array-Struktur in ein Array umwandeln

Diese Frage stellt eine Herausforderung dar: Einen String mit einer Array-Struktur in ein tatsächliches Array umwandeln . Die angegebene Zeichenfolge folgt einer durch Punkte getrennten Struktur und stellt verschachtelte Arrays dar. Um diese Zeichenfolge zu transformieren, können wir die in PHP integrierten Funktionen und logischen Überlegungen nutzen.

Zerlegen Sie zunächst die Zeichenfolge mithilfe von explosion() in ein Array von Schlüsseln auf. Anschließend durchlaufen Sie diese Schlüssel und erstellen die gewünschte Array-Struktur. Wenn ein Schlüssel in der aktuellen Ebene des Arrays nicht vorhanden ist, erstellen Sie ihn.

Beispielcode:

<code class="php">$string = "Main.Sub.SubOfSub";
$data = "SuperData";
$array = [];
$path = explode('.', $string);

$root = &$array;
while (count($path) > 1) {
    $key = array_shift($path);
    if (!isset($root[$key])) $root[$key] = [];
    $root = &$root[$key];
}
$root[$path[0]] = $data;</code>

Dieser Code erstellt effizient die gewünschte Array-Struktur aus der bereitgestellten Zeichenfolge und ermöglicht so Sie können strukturiert auf verschachtelte Werte zugreifen.

Das obige ist der detaillierte Inhalt vonWie konvertiert man in PHP einen durch Punkte getrennten String in ein verschachteltes Array?. 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