PHP函数array_merge的使用举例分析
array_merge()函数是一个PHP数组函数,用于将多个数组合并成一个数组。它接受一个或多个数组作为参数,并将这些数组的元素合并到一个新的数组中。下面是对array_merge()函数的使用举例分析。
首先,我们创建两个数组并将其赋值给两个变量:
$array1 = [1, 2, 3]; $array2 = ['a', 'b', 'c'];
然后,我们使用array_merge()函数将这两个数组合并为一个新的数组,并将结果赋值给一个新的变量:
$result = array_merge($array1, $array2);
现在,$result变量将包含合并后的数组:
print_r($result);
输出结果为:
Array
(
[0] => 1
[1] => 2
[2] => 3
[3] => a
[4] => b
[5] => c
)
我们可以看到,合并后的数组包含了两个原始数组的所有元素。合并后的数组的索引会根据元素的添加顺序重新分配。
除了普通的数组,array_merge()函数也可以用于关联数组。我们创建两个关联数组:
$array1 = ['name' => 'John', 'age' => 30]; $array2 = ['gender' => 'male', 'occupation' => 'engineer'];
然后,我们将这两个关联数组合并为一个新的关联数组:
$result = array_merge($array1, $array2);
类似地,$result变量将包含合并后的关联数组:
print_r($result);
输出结果为:
Array
(
[name] => John
[age] => 30
[gender] => male
[occupation] => engineer
)
可以看到,合并后的关联数组包含了两个原始关联数组的所有键值对。
array_merge()函数还可以接受多个数组作为参数。我们创建一个额外的数组:
$array3 = ['color' => 'blue', 'size' => 'large'];
然后,我们将三个数组合并为一个新的数组:
$result = array_merge($array1, $array2, $array3);
此时,$result变量将包含三个原始数组的所有元素:
print_r($result);
输出结果为:
Array
(
[name] => John
[age] => 30
[gender] => male
[occupation] => engineer
[color] => blue
[size] => large
)
这样,我们成功将三个数组合并为一个新的数组。
在使用array_merge()函数时还需要注意一点。如果有两个或更多原始数组包含相同的键名,那么后面的键值对会覆盖前面的键值对。例如:
$array1 = ['name' => 'John', 'age' => 30]; $array2 = ['name' => 'Marry', 'gender' => 'female'];
当我们将这两个关联数组合并为一个新的关联数组时:
$result = array_merge($array1, $array2);
此时,$result变量将包含合并后的关联数组:
print_r($result);
输出结果为:
Array
(
[name] => Marry
[age] => 30
[gender] => female
)
可以看到,由于$array2中的'name'键值对覆盖了$array1中的'name'键值对,所以合并后的关联数组中的'name'键对应的值为'Marry'而不是'John'。
综上所述,array_merge()函数可以很方便地将多个数组合并为一个数组。它适用于普通数组和关联数组,且可以接受多个数组作为参数。需要注意的是,如果有多个数组包含相同的键名,后面的键值对会覆盖前面的键值对。
