Mehrdimensionale Arrays in lineare Strukturen vereinfachen
Das Umwandeln mehrdimensionaler Arrays in ihre eindimensionalen Gegenstücke kann oft eine entmutigende Aufgabe sein, insbesondere wenn es darum geht Arrays, die ausschließlich numerische Schlüssel enthalten. Es gibt jedoch eine einfache, aber elegante Lösung, um diese Strukturen zu verflachen, indem man die Array-Funktionen von PHP nutzt.
Antwort erklärt
Die Lösung verwendet die Funktion array_reduce() in Verbindung mit array_merge(). array_reduce() durchläuft jedes Element des Arrays und wendet eine benutzerdefinierte Funktion an, um einen endgültigen reduzierten Wert zu akkumulieren. In diesem Fall übergeben wir die Funktion array_merge(), die zwei Arrays zu einem einzigen Array kombiniert.
Durch die Angabe eines leeren Arrays als Anfangswert der Reduzierungsoperation stellen wir sicher, dass das Endergebnis ein ist Array, das alle Elemente aus dem mehrdimensionalen Array enthält. Jede Iteration verkettet das aktuelle Subarray mit dem Akkumulator und reduziert so effektiv die Eingabe.
Beispielimplementierung
Betrachten Sie das in der Frage bereitgestellte mehrdimensionale Array:
$array = [ [0 => 'foo', 1 => 'bar', 2 => 'hello'], [0 => 'world', 1 => 'love'], [0 => 'stack', 1 => 'overflow', 2 => 'yep', 3 => 'man'], ];
Um dieses Array zu reduzieren, können wir einfach Folgendes verwenden Code:
$result = array_reduce($array, 'array_merge', []);
Dies würde das gewünschte eindimensionale Array erzeugen:
$result = [ 'foo', 'bar', 'hello', 'world', 'love', 'stack', 'overflow', 'yep', 'man' ];
Das obige ist der detaillierte Inhalt vonWie kann ich ein mehrdimensionales numerisches Array in PHP effizient reduzieren?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!