欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  后端开发

PHP数组学习之如何以合并方式创建数组

程序员文章站 2022-03-22 13:09:14
...
在之前的文章《PHP数组学习之如何以填充方式来创建数组》中,我们介绍了两种另类的数组创建方法。这里我们再介绍一种另类的数组创建方法,我们来看看吧。

我们一般讲的合并两个数组,是类型这样:

有两个数组
array (size=2)
  'a' => string 'red' (length=3)
  'b' => string 'green' (length=5)
array (size=2)
  'c' => string 'blue' (length=4)
  'd' => string 'yellow' (length=6)
  
合并两个数组
array (size=4)
  'a' => string 'red' (length=3)
  'b' => string 'green' (length=5)
  'c' => string 'blue' (length=4)
  'd' => string 'yellow' (length=6)

拼接两个数组,将一个数组的所有元素(键名和键值)附加在另一个数组的后面。

但其实合并两个数组,还可以是以一个数组元素为键名、另一个数组元素为键值,通过这种方式我们就可以创建一个新数组。

我们来看看下面一个例子:

<?php
header("Content-type:text/html;charset=utf-8");
$keys=array("a","b","c","d");
$values=array("red","green","blue","yellow");
var_dump($keys);
var_dump($values);
echo "使用array_combine()合并数组后:";
var_dump(array_combine($keys,$values));
?>

输出结果为:

PHP数组学习之如何以合并方式创建数组

可以看出,上面的示例中使用array_combine($keys,$values)函数通过合并两个数组的方式创建了一个新数组,其中$keys数组中的元素作为了新数组的键名,$values数组的元素为作为了新数组的键值。

但需要注意的是,使用array_combine()函数创建数组时,$keys数组和$values数组中的元素个数必须要一致,这才能让键名和键值一一对应,否则就会报错并返回 FALSE:

<?php
$keys=array("a","b","c","d");
$values=array("red","green","blue");
var_dump(array_combine($keys,$values));
?>

PHP数组学习之如何以合并方式创建数组

$keys数组不可为多维数组

<?php
$keys=array(array("1","2","3"),"b","c","d");
$values=array("red","green","blue","yellow");
var_dump(array_combine($keys,$values));
?>

否则就会报错:

PHP数组学习之如何以合并方式创建数组

但$values数组可以为多维数组

<?php
$keys=array("a","b","c","d");
$values=array(array("red","pink","orange"),"green","blue","yellow");
var_dump(array_combine($keys,$values));
?>

输出结果为:

PHP数组学习之如何以合并方式创建数组

好了就说到这里了,有其他想知道的,可以点击这个哦。→ →php视频教程

最后给大家推荐一个PHP数组的免费视频教程:PHP函数之array数组函数视频讲解,快来学习吧!

以上就是PHP数组学习之如何以合并方式创建数组的详细内容,更多请关注其它相关文章!