Heim >Backend-Entwicklung >PHP-Tutorial >Wie kann ich ein mehrdimensionales numerisches Array in PHP reduzieren?

Wie kann ich ein mehrdimensionales numerisches Array in PHP reduzieren?

Susan Sarandon
Susan SarandonOriginal
2024-12-02 02:54:09867Durchsuche

How Can I Flatten a Multidimensional Numeric-Keyed Array in PHP?

Mehrdimensionale Arrays in eine Dimension reduzieren

Das Umwandeln eines mehrdimensionalen Arrays in ein eindimensionales Array kann eine Herausforderung darstellen, insbesondere wenn es sich um das ursprüngliche Array handelt enthält nur Zifferntasten. Im Gegensatz zu anderen Ansätzen, die unterschiedliche Schlüssel berücksichtigen, befasst sich diese Frage speziell mit der Notwendigkeit, mehrdimensionale Arrays mit einfachen numerischen Schlüsseln zu reduzieren.

Lösung:

Die Lösung für dieses Problem liegt in Verwendung der Funktion array_reduce() zusammen mit array_merge() und einem leeren Array als Anfangsargument. Dadurch werden alle Unterarrays effektiv rekursiv in einem einzigen abgeflachten Array kombiniert.

Code:

array_reduce($array, 'array_merge', array())

Erklärung:

  • array_reduce() wendet iterativ eine benutzerdefinierte Funktion an (in diesem Fall array_merge). Fall) zu den Elementen des Arrays, zusammen mit dem angegebenen Anfangswert (array()).
  • array_merge führt das aktuelle Element (ein Unterarray) mit dem bisher erhaltenen abgeflachten Ergebnis zusammen.
  • Das leere Array als Ausgangsargument dient als Ausgangspunkt für die rekursive Zusammenführung Prozess.

Beispiel:

Betrachten Sie das folgende mehrdimensionale Array:

$array = array(
    array(1, 2, 3),
    array(4, 5, 6)
);

Anwenden der Glättungslösung:

$flattenedArray = array_reduce($array, 'array_merge', array());

Das resultierende $flattenedArray wird sein:

array(1, 2, 3, 4, 5, 6)

Das obige ist der detaillierte Inhalt vonWie kann ich ein mehrdimensionales numerisches Array in PHP reduzieren?. 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