Heim > Backend-Entwicklung > PHP-Tutorial > Wie werden beim Zusammenführen von PHP-Arrays verschiedene Datentypen zusammengeführt?

Wie werden beim Zusammenführen von PHP-Arrays verschiedene Datentypen zusammengeführt?

王林
Freigeben: 2024-04-28 12:06:01
Original
430 Leute haben es durchsucht

Für das Zusammenführen von Arrays unterschiedlicher Datentypen in PHP gibt es drei gängige Methoden: 1) array_merge_recursive, rekursives Zusammenführen, Beibehalten von Unterarrays; 2) der Spread-Operator von PHP 7.4+, der Arrays erweitert; Kontrolle.

Wie werden beim Zusammenführen von PHP-Arrays verschiedene Datentypen zusammengeführt?

PHP-Array-Zusammenführung zwischen verschiedenen Datentypen

In PHP stoßen Sie beim Zusammenführen von Arrays häufig auf Daten verschiedener Datentypen, um die perfekte Zusammenführung dieser Datentypen zu erreichen. und stellen praktische Fälle zur Demonstration bereit.

1. array_merge_recursive

Diese Funktion kann Arrays und Unterarrays rekursiv in Form von Arrays zusammenführen, ohne die Daten der Unterarrays zu verlieren.

<?php
$array1 = ['a' => 1, 'b' => [3, 4], 'c' => ['d' => 6]];
$array2 = ['b' => [1, 2], 'e' => 5];

$mergedArray = array_merge_recursive($array1, $array2);

print_r($mergedArray); // 输出:
// Array
// (
//     [a] => 1
//     [b] => Array
//         (
//             [0] => 3
//             [1] => 4
//             [2] => 1
//             [3] => 2
//         )
//     [c] => Array
//         (
//             [d] => 6
//         )
//     [e] => 5
// )
?>
Nach dem Login kopieren

2. Spread-Operator (PHP 7.4+)

PHP 7.4 führte den Spread-Operator ein, der das Verteilen eines Arrays innerhalb eines anderen Arrays ermöglicht.

<?php
$array1 = ['a' => 1, 'b' => [3, 4]];
$array2 = ['b' => [1, 2], 'e' => 5];

$mergedArray = [...$array1, ...$array2];

print_r($mergedArray); // 输出:
// Array
// (
//     [0] => 1
//     [1] => 3
//     [2] => 4
//     [3] => 1
//     [4] => 2
//     [5] => 5
// )
?>
Nach dem Login kopieren

3. Benutzerdefinierte Zusammenführungsfunktion

Wenn Sie eine detailliertere Kontrolle über den Zusammenführungsprozess benötigen, können Sie eine benutzerdefinierte Zusammenführungsfunktion schreiben.

<?php
function custom_array_merge(array $array1, array $array2): array
{
    foreach ($array2 as $key => $value) {
        if (isset($array1[$key]) && is_array($array1[$key]) && is_array($value)) {
            $array1[$key] = custom_array_merge($array1[$key], $value);
        } else {
            $array1[$key] = $value;
        }
    }

    return $array1;
}

$array1 = ['a' => 1, 'b' => [3, 4], 'c' => ['d' => 6]];
$array2 = ['b' => [1, 2], 'e' => 5];

$mergedArray = custom_array_merge($array1, $array2);

print_r($mergedArray); // 输出:
// Array
// (
//     [a] => 1
//     [b] => Array
//         (
//             [0] => 3
//             [1] => 4
//             [2] => 1
//             [3] => 2
//         )
//     [c] => Array
//         (
//             [d] => 6
//         )
//     [e] => 5
// )
?>
Nach dem Login kopieren

Das obige ist der detaillierte Inhalt vonWie werden beim Zusammenführen von PHP-Arrays verschiedene Datentypen zusammengeführt?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Verwandte Etiketten:
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
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage