在本文中,我们将看到 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…..); |
相关用法
- PHP array_merge()和array_combine()的区别用法及代码示例
- PHP array_merge()用法及代码示例
- PHP array_merge_recursive()用法及代码示例
- PHP array_multisort()用法及代码示例
- PHP array_map()用法及代码示例
- PHP array_arsort()用法及代码示例
- PHP array_count()用法及代码示例
- PHP array_key_first()用法及代码示例
- PHP array_key_last()用法及代码示例
- PHP array_combine()用法及代码示例
- PHP array_count_values()用法及代码示例
- PHP array_diff()用法及代码示例
- PHP array_diff_assoc()用法及代码示例
- PHP array_diff_ukey()用法及代码示例
- PHP array_fill()用法及代码示例
- PHP array_fill_keys()用法及代码示例
- PHP array_filter()用法及代码示例
- PHP array_flip()用法及代码示例
- PHP array_intersect()用法及代码示例
- PHP array_intersect_uassoc()用法及代码示例
- PHP array_intersect_ukey()用法及代码示例
- PHP array_key_exists()用法及代码示例
- PHP array_keys()用法及代码示例
- PHP array_pad()用法及代码示例
- PHP array_pop()用法及代码示例
注:本文由纯净天空筛选整理自abhishekgandal324大神的英文原创作品 What is the differences between array_merge() and array_merge_recursive() functions in PHP ?。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。