Heim > Backend-Entwicklung > PHP-Tutorial > Wie teile ich einen String in PHP ohne explizite Schleifen in ein mehrdimensionales Array auf?

Wie teile ich einen String in PHP ohne explizite Schleifen in ein mehrdimensionales Array auf?

Mary-Kate Olsen
Freigeben: 2024-10-29 03:56:29
Original
1049 Leute haben es durchsucht

How to Split a String into a Multidimensional Array in PHP Without Explicit Loops?

Aufteilen eines Strings in ein mehrdimensionales Array in PHP ohne Schleifen

Um einen String in ein mehrdimensionales Array in PHP aufzuteilen, ohne auf iterative Strukturen angewiesen zu sein kann eine Kombination von Array-Funktionen verwendet werden, um das gewünschte Ergebnis zu erzielen. Betrachten Sie als Beispiel eine Zeichenfolge im Format „A,5|B,3|C,8“.

Mit array_map und explosion können Sie diese Aufgabe effizient erledigen. In PHP 5.3 und höher kann beispielsweise das folgende Code-Snippet verwendet werden:

<code class="php">$str = "A,5|B,3|C,8";

$a = array_map(
    function ($substr) {
        return explode(',', $substr);
    },
    explode('|', $str)
);
var_dump($a);</code>
Nach dem Login kopieren

Dieses Code-Snippet beginnt mit der Aufteilung der Eingabezeichenfolge in ein Array von Teilzeichenfolgen mithilfe der Explosionsfunktion, die die Zeichenfolge trennt das Pipe-Zeichen. Dann wird array_map verwendet, um die Explosionsfunktion auf jeden Teilstring anzuwenden und ihn weiter in ein Array aus zwei Elementen aufzuteilen: das erste Element enthält den Buchstaben und das zweite Element enthält die Zahl.

Das Ergebnis ist ein mehrdimensionales Array wobei jedes innere Array einem einzelnen Buchstaben-Zahlen-Paar aus der Eingabezeichenfolge entspricht:

array
  0 =>
    array
      0 => string 'A' (length=1)
      1 => string '5' (length=1)
  1 =>
    array
      0 => string 'B' (length=1)
      1 => string '3' (length=1)
  2 =>
    array
      0 => string 'C' (length=1)
      1 => string '8' (length=1)
Nach dem Login kopieren

Während diese Lösung explizite Schleifen im Benutzercode eliminiert, ist es wichtig zu beachten, dass array_map intern immer noch a verwendet Schleife zum Durchlaufen des Eingabearrays. Das Fehlen einer Schleife im dargestellten Code bedeutet daher nicht, dass es überhaupt keine Schleife gibt.

Das obige ist der detaillierte Inhalt vonWie teile ich einen String in PHP ohne explizite Schleifen in ein mehrdimensionales Array auf?. 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
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage