Heim > Backend-Entwicklung > PHP-Tutorial > Wie kann ich mehrdimensionale Arrays in PHP reduzieren?

Wie kann ich mehrdimensionale Arrays in PHP reduzieren?

Linda Hamilton
Freigeben: 2025-01-05 09:31:39
Original
251 Leute haben es durchsucht

How Can I Flatten Multidimensional Arrays in PHP?

PHP Flatten Multidimensional Arrays

Das Reduzieren eines mehrdimensionalen Arrays in eine einzige Dimension kann für einige Datenverarbeitungsaufgaben unerlässlich sein. PHP bietet eine bequeme Möglichkeit, diese Konvertierung mithilfe von Array-Manipulationsfunktionen durchzuführen.

Lösung mit array_merge

$array = [
    [1, 2, 3],
    [4, 5, 6],
];

$result = call_user_func_array('array_merge', $array);

echo "<pre class="brush:php;toolbar:false">";
print_r($result); // Output: [1, 2, 3, 4, 5, 6]
Nach dem Login kopieren

Mit der Funktion call_user_func_array() können Sie ein Array von Argumenten an eine Funktion übergeben. In diesem Fall rufen wir damit die Funktion array_merge() mit jedem Element des mehrdimensionalen Arrays als Argument auf.

Lösung mit rekursiver Funktion

function array_flatten($array) {
    $return = [];
    foreach ($array as $key => $value) {
        if (is_array($value)) {
            $return = array_merge($return, array_flatten($value));
        } else {
            $return[$key] = $value;
        }
    }
    return $return;
}

$array = [
    [1, 2, 3],
    [4, 5, 6],
];

$result = array_flatten($array);

echo "<pre class="brush:php;toolbar:false">";
print_r($result); // Output: [1, 2, 3, 4, 5, 6]
Nach dem Login kopieren

Diese rekursive Funktion funktioniert durch Iteration durch das Array und ruft sich rekursiv für alle Array-Elemente auf, auf die es stößt. Es führt die Ergebnisse jedes rekursiven Aufrufs im endgültigen abgeflachten Array zusammen.

Das obige ist der detaillierte Inhalt vonWie kann ich mehrdimensionale Arrays in PHP reduzieren?. 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