當前位置: 首頁>>代碼示例 >>用法及示例精選 >>正文


PHP array_merge()和array_merge_recursive()的區別用法及代碼示例


在本文中,我們將看到 array_merge() 和 array_merge_recursive() 函數,並了解它們的基本實現以及它們之間的差異。

array_merge() 函數和array_merge_recursive() 函數都可用於將多個數組合並為單個數組。

PHP array_merge() 函數

array_merge函數PHP 中的 是一種函數,用於將一個或多個數組合並或組合成一個數組。當有兩個或多個數組且每個數組具有不同的鍵並且我們希望將它們顯示為一個數組時,使用此函數。這意味著如果有兩個數組數組 A 和數組 B 並且這兩個數組的元素都沒有相同的鍵,那麽使用這個 array_merge 函數我們可以組合兩個數組,並將其顯示為 AB。您還可以將一個數組分配給該函數。

例子:在此示例中,我們聲明了兩個具有不同鍵的不同數組,並使用array_merge()函數。

PHP


<?php
$a1=array("Mumbai","Nashik");
$a2=array("Nagpur","Pune");
print_r(array_merge($a1,$a2));
?>
輸出
Array
(
    [0] => Mumbai
    [1] => Nashik
    [2] => Nagpur
    [3] => Pune
)

PHP array_merge_recursive() 函數

array_merge_recursive()函數PHP 中的 是一種函數,用於將一個或多個數組合並或組合成一個數組。當有兩個或多個數組且至少有兩個或多個數組元素具有相同的鍵並且我們希望將它們顯示為一個數組時,使用此函數。這意味著如果有兩個數組,數組 A 和數組 B,並且這兩個數組中至少有兩個元素具有相同的鍵,那麽使用array_merge-recursive() 函數,我們可以將這兩個數組組合起來並顯示作為AB。如果您隻為該函數分配一個數組,那麽它將與 array_merge() 的行為相同。

示例 1:在此示例中,我們聲明了兩個數組,其中兩個元素具有相同的鍵,並使用 array_merge_recursive() 我們成功地將它們組合在一起。

PHP


<?php
$a1=array("a"=>"Mumbai","b"=>"Nashik");
$a2=array("c"=>"Nagpur","b"=>"Pune");
print_r(array_merge_recursive($a1,$a2));
?>
輸出
Array
(
    [a] => Mumbai
    [b] => Array
        (
            [0] => Nashik
            [1] => Pune
        )

     => Nagpur
)

示例 2:以下代碼顯示了以 4 個數組作為參數的 array_merge_recursive() 方法的另一個示例。

PHP


<?php
   
// PHP program to demonstrate
// array_merge_recursive()
// function with same keys
$a1 = ["CS" => "Algorithms", "Web Technologies" => "HTML"];
$a2 = ["Maths" => "Probability", "Science" => "Chemistry"];
$a3 = ["Web Technologies" => "PHP", "CS" => "Data Structures"];
$a4 = ["Humanity" => "History", "Science" => "Biology"];
print_r(array_merge_recursive($a1, $a2, $a3, $a4));
?>

輸出:

Array
(
    [CS] => Array
        (
            [0] => Algorithms
            [1] => Data Structures
        )

    [Web Technologies] => Array
        (
            [0] => HTML
            [1] => PHP
        )

    [Maths] => Probability
    [Science] => Array
        (
            [0] => Chemistry
            [1] => Biology
        )

    [Humanity] => History
)

array_merge() 和 array_merge_recursive() 函數之間的區別

array_merge() 函數 array_merge_recursive() 函數
該函數用於將兩個或多個數組合並為一個數組 此函數用於組合多個數組,以便將一個數組的值附加到最後一個數組的末尾
當數組元素具有不同鍵時使用此函數 當數組元素具有相同鍵時使用此函數
語法:array_merge($array1, $array2, $array3…..); 語法:array_merge_recursive($array1, $array2, $array3…..);


相關用法


注:本文由純淨天空篩選整理自abhishekgandal324大神的英文原創作品 What is the differences between array_merge() and array_merge_recursive() functions in PHP ?。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。