Heim  >  Artikel  >  Backend-Entwicklung  >  Wie kann ich in PHP einen String in ein mehrdimensionales Array umwandeln, ohne Schleifen zu verwenden?

Wie kann ich in PHP einen String in ein mehrdimensionales Array umwandeln, ohne Schleifen zu verwenden?

Patricia Arquette
Patricia ArquetteOriginal
2024-10-29 19:14:30617Durchsuche

How can I transform a string into a multidimensional array in PHP without using loops?

Mehrdimensionales Array-Parsen in PHP ohne Schleifen

In PHP ist das Aufteilen eines Strings in ein mehrdimensionales Array ohne die Verwendung expliziter Schleifen mit Bedacht möglich Verwendung der Array-Funktionen von PHP.

Lösung:

Der folgende Codeausschnitt zeigt, wie man einen String in der Form „A,5|B,3|C, 8" in ein mehrdimensionales Array ohne Verwendung von Schleifen:

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

$a = array_map(
    function ($substr) {
        return explode(',', $substr);
    },
    explode('|', $str)
);

var_dump($a);</code>

Erklärung:

  1. Zuerst die Zeichenfolge „A,5|B,3|C ,8" wird mithilfe der Explosionsfunktion mit dem Trennzeichen '|' in ein Array von Teilzeichenfolgen aufgeteilt.
  2. Die Funktion array_map wird dann verwendet, um über jede Teilzeichenfolge zu iterieren und sie mithilfe von erneut in ein Array aus zwei Werten aufzuteilen Trennzeichen ','.
  3. Das resultierende Array $a enthält eine mehrdimensionale Darstellung der Eingabezeichenfolge, wobei die erste Dimension jede Teilzeichenfolge darstellt und die zweite Dimension die beiden Werte enthält.

Beispielausgabe:

array
  0 =>
    array
      0 => 'A'
      1 => '5'
  1 =>
    array
      0 => 'B'
      1 => '3'
  2 =>
    array
      0 => 'C'
      1 => '8'

Hinweis:

Array_map kann zwar in manchen Fällen schneller sein als eine manuelle Schleife, dies ist jedoch wichtig zu beachten dass es sich intern immer noch um eine Schleife handelt. Die durch die Funktionen bereitgestellte Abstraktion vermeidet jedoch die Notwendigkeit einer expliziten Schleife in Ihrem Code.

Das obige ist der detaillierte Inhalt vonWie kann ich in PHP einen String in ein mehrdimensionales Array umwandeln, ohne Schleifen zu verwenden?. 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