PHP合并两个或多个数组的方法

yipeiwu_com6年前PHP代码库

使用运算符“+”

PHP的数组运算符“+”可以用来联合两个(或多个数组)。

<?php

header("content-type:text/html;charset=utf-8");

$x = array("red", "green","orange"); 

$y = array("red","blue","yellow","cyan"); 

$z = $x + $y; // $x 与 $y 的联合

var_dump($z);

?>

输出:

可以看出,第二个数组中只有第4个值包含在结果中,因为第二个数组的前三个元素具有和第一个数组元素相同的键。接下来让我们看看数组索引不匹配时数组联合运算符"+"的作用:

<?php

header("content-type:text/html;charset=utf-8");

$x = array("a" => "red", "b" => "green"); 

$y = array("c" => "blue", "d" => "yellow"); 

$z = $x + $y; // $x 与 $y 的联合

var_dump($z);

?>

输出:

可以看出:数组运算符“+”没有对结果中索引进行重新排序。

使用array_merge()函数

array_merge()函数可以用于将两个或多个数组合并为一个数组,例:

<?php

header("content-type:text/html;charset=utf-8");

$x = array("0" => "red", "1" => "green","2" => "yellow"); 

$y = array("3" => "blue", "2" => "yellow","1" => " orange"); 

$z = array_merge($x, $y); // $x 与 $y 的联合

var_dump($z);

?>

输出:

可以看出,array_merge()函数传递给数组键的数字索引在返回的数组中从零开始重新编号。

使用array_merge_recursive()函数

array_merge_recursive()函数可以把一个或多个数组合并为一个数组。

<?php

header("content-type:text/html;charset=utf-8");

$x = array("0" => "red", "1" => "green","2" => "yellow"); 

$y = array("3" => "blue", "2" => "yellow","1" => " orange"); 

$z = array_merge_recursive($x, $y); // $x 与 $y 的联合

var_dump($z);

?>

输出:

相关文章

PHP curl 获取响应的状态码的方法

PHP curl可以从服务器端模拟一个http请求,例如抓取网页、模拟登陆等。根据选项设置,可以在curl_exec的返回结果中获取到响应头和body,但这没有响应的状态吗。想要获取状态...

利用PHP判断是否是连乘数字串的方法示例

描述 有这样一道题,给出一个数字串A,需要判断A是否为连乘数字串,连乘数字串的定义就是一个数字串可以拆分成若干个数字,后面的数字(从第N个数字开始)为前面2个数字的乘积。 举例 (1)...

php设计模式 Command(命令模式)

<?php /** * 命令模式 * * 将一个请求封装为一个对象从而使你可用不同的请求对客户进行参数化,对请求排除或记录请求日志,以及支持可取消的操作 */ interface...

php自动加载的两种实现方法

php自动载方法有两种. 第一种方案用__autoload,这个函数较简单,也较弱. 但有一问题没有解决, 就是在include前判断文件是否存在的问题. 复制代码 代码如下: set_...

探讨:php中在foreach中使用foreach ($arr as &amp;$value) 这种类型的解释

自 PHP 5 起,可以很容易地通过在 $value 之前加上 & 来修改数组的元素。此方法将以引用赋值而不是拷贝一个值。 复制代码 代码如下:<?php$arr = array(...