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

yipeiwu_com5年前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 CodeBase:将时间显示为&quot;刚刚&quot;&quot;n分钟/小时前&quot;的方法详解

在很多场合为了显示出信息的及时性,一般会将时间显示成“刚刚”,“5分钟前”,“3小时前”等,而不是直接将时间打印出来。比如微博,SNS类应用就最长用到这个功能。而一般存储在数据库中的时间...

Ubuntu中搭建Nginx、PHP环境最简单的方法

前言:百度出来的结果好坑爹,而且某些文章说别人坑爹,可他自己也坑爹。求业界良心啊。还是谷歌靠谱。 系统环境:Ubuntu 13 和 Linux Mint 15都通过。 默认安装的是ngi...

php下清空字符串中的HTML标签的代码

本文介绍了php 清空字符串中的html标签 要过滤字符串中所有的html标签有两种方法一种是我们自己写一个函数,用正则过滤,一个是用php自带函数strip_tags哦。 复制代码 代...

php+ajax实现无刷新的新闻留言系统

php+ajax实现无刷新的新闻留言系统

本文介绍了一款无刷新的新闻留言系统,最简明易懂的一个ajax无刷新留言系统,源码中省略了接受数据验证的过程,大家可根据自己的需求进行扩展,下面进入主题。 核心源码: 1.配置文件:co...

PHP里面把16进制的图片数据显示在html的img标签上(实现方法)

客户公司的SQLServer2008的一个生产数据库才1年多就高达18G之巨,原来是系统里面的图片直接以16进制字符串的形式存储在数据库的。要用PHP显示在html页面上,我还耗费了不上...