数组合成函数有3个:1、array_combine(),通过合并两个数组来创建新数组,语法“array_combine(键名数组,键值数组)”;2、array_merge(),可把多个数组合并为一个数组,语法“array_merge(数组1,数组2...)”;3、array_merge_recursive(),可把多个数组合并为一个数组,元素键名相同不会覆盖,而是组成子数组。

本教程操作环境:windows7系统、PHP8.1版、DELL G3电脑

php中提供了3个对数组进行合成的函数:

  • array_combine()

  • array_merge()

  • array_merge_recursive()

1、使用array_combine()合成数组

array_combine() 函数通过合并两个数组来创建一个新数组,其中的一个数组元素为键名,另一个数组的元素为键值。

array_combine(keys,values);
参数描述
keys必需。规定数组的键名。
values必需。规定数组的键值。

注释:键名数组和键值数组的元素个数必须相同!

示例:

<?php
header("Content-type:text/html;charset=utf-8");
$name=array("Peter","Ben","Joe");
$age=array("35","37","43");
var_dump($name);
var_dump($age);
$arr=array_combine($name,$age);
var_dump($arr);
?>

1.png

2、使用array_merge()函数合成数组

array_merge() 函数用于把一个或多个数组合并为一个数组。

提示:您可以向函数输入一个或者多个数组。

array_merge(array1,array2,array3...)
参数描述
array1必需。规定数组。
array2可选。规定数组。
array3可选。规定数组。

注释:如果两个或更多个数组元素有相同的键名,则最后的元素会覆盖其他元素。

注释:如果您仅仅向 array_merge() 函数输入一个数组,且键名是整数,则该函数将返回带有整数键名的新数组,其键名以 0 开始进行重新索引(参见下面的实例 1)。

示例:

<?php
header("Content-type:text/html;charset=utf-8");
$a1=array("a"=>"red","b"=>"green");
$a2=array("c"=>"blue","b"=>"yellow");
var_dump(array_merge($a1,$a2));
?>

2.png

3、使用array_merge_recursive()函数

array_merge_recursive() 函数用于把一个或多个数组合并为一个数组。

array_merge_recursive(array1,array2,array3...)

说明:array_merge_recursive() 函数与 array_merge() 函数之间的不同是在处理两个或更多个数组元素有相同的键名的情况。array_merge_recursive() 不会进行键名覆盖,而是将多个相同键名的值递归组成一个数组。

注释:如果您仅仅向 array_merge_recursive() 函数输入一个数组,结果与 array_merge() 相同,函数将返回带有整数键名的新数组,其键名以 0 开始进行重新索引。

示例:

<?php
header("Content-type:text/html;charset=utf-8");
$a1=array("a"=>"red","b"=>"green");
$a2=array("c"=>"blue","b"=>"yellow");
var_dump(array_merge_recursive($a1,$a2));
?>

3.png


php中对数组进行合成的函数是什么