PHP中数组合并的两种方法及区别介绍


Posted in PHP onSeptember 14, 2012

PHP数组合并两种方法及区别
如果是关联数组,如下:

$a = array( 
'where' => 'uid=1', 
'order' => 'uid', 
); 
$b = array( 
'where' => 'uid=2', 
'order' => 'uid desc', 
);

1. array_merge,如果两个数组存在相同的key,后面的一个会覆盖前面的

<?php 
$c = array_merge($a, $b); 
var_export($c);//结果与原来的$b相同 
$d = array_merge($b, $a); 
var_export($d);//结果与原来的$a相同

2. "+"操作符,如果两个数组存在相同的key,前面的一个会覆盖后面的
<?php 
$c = $a + $b; 
var_export($c);//结果与原来的$a相同 
$d = $b + $a; 
var_export($d);//结果与原来的$b相同

如果是数字索引数组,如下:

$a = array( 
1 => '1111111', 
2 => '222222222' 
); 
$b = array( 
4 => '33333333333', 
1 => '444444444' 
);

1. array_merge. 效果类似代码foreach每个数组元素,然后将每个元素压入一个新堆栈当中
<?php 
$c = array_merge($a, $b); 
var_export($c); 
$d = array_merge($b, $a); 
var_export($d);

输出:
array (
0 => '1111111',
1 => '222222222',
2 => '33333333333',
3 => '444444444',
)
array (
0 => '33333333333',
1 => '444444444',
2 => '1111111',
3 => '222222222',
)
2. "+"操作符. 效果类似代码foreach每个数组元素,然后将每个元素压入一个新堆栈当中,如果同样的key已经存在则不处理
<?php 
$c = $a + $b; 
var_export($c); 
$d = $b + $a; 
var_export($d);

输出:
array (
1 => '1111111',
2 => '222222222',
4 => '33333333333',
)
array (
4 => '33333333333',
1 => '444444444',
2 => '222222222',
)
PHP 相关文章推荐
COM in PHP (winows only)
Oct 09 PHP
实用函数4
Nov 08 PHP
PHP CLI模式下的多进程应用分析
Jun 03 PHP
php修改NetBeans默认字体的大小
Jul 02 PHP
smarty模板中使用get、post、request、cookies、session变量的方法
Apr 24 PHP
php中限制ip段访问、禁止ip提交表单的代码分享
Aug 22 PHP
简单分析ucenter 会员同步登录通信原理
Aug 25 PHP
在SAE上搭建最新wordpress的方法
Dec 21 PHP
php原生导出excel文件的两种方法(推荐)
Nov 19 PHP
php5.5使用PHPMailer-5.2发送邮件的完整步骤
Oct 14 PHP
PHP树形结构tree类用法示例
Feb 01 PHP
PHP实现获取文件mime类型多种方法解析
May 28 PHP
PHP合并两个数组的两种方式的异同
Sep 14 #PHP
PHP数据流应用的一个简单实例
Sep 14 #PHP
分享一下贝贝成长进度的php代码
Sep 14 #PHP
PHP 之Section与Cookie使用总结
Sep 14 #PHP
PHP 文件系统详解
Sep 13 #PHP
PHP 面向对象详解
Sep 13 #PHP
关于访问控制的一首PHP面试题(对属性或方法的访问控制)
Sep 13 #PHP
You might like
php图片加水印原理(超简单的实例代码)
2013/01/18 PHP
Linux下PHP安装mcrypt扩展模块笔记
2014/09/10 PHP
PHP 生成微信红包代码简单
2016/03/25 PHP
疯掉了,尽然有js写的操作系统
2007/04/23 Javascript
JQuery 获得绝对,相对位置的坐标方法
2010/02/09 Javascript
javascript中最常用的继承模式 组合继承
2010/08/12 Javascript
基于jquery实现的上传图片及图片大小验证、图片预览效果代码
2011/04/12 Javascript
jquery动态添加删除一行数据示例
2014/06/12 Javascript
jQuery实现TAB风格的全国省份城市滑动切换效果代码
2015/08/24 Javascript
JS实现pasteHTML兼容ie,firefox,chrome的方法
2016/06/22 Javascript
JavaScript实战(原生range和自定义特效)简单实例
2016/08/21 Javascript
原生js获取浏览器窗口及元素宽高常用方法集合
2017/01/18 Javascript
Vue.js弹出模态框组件开发的示例代码
2017/07/26 Javascript
Vue.js在数组中插入重复数据的实现代码
2017/11/17 Javascript
nodejs+mongodb+vue前后台配置ueditor的示例代码
2018/01/02 NodeJs
webpack的pitching loader详解
2019/09/23 Javascript
JavaScript用document.write()输出换行的示例代码
2020/11/26 Javascript
Python中unittest模块做UT(单元测试)使用实例
2015/06/12 Python
使用Python自动生成HTML的方法示例
2019/08/06 Python
Python操作Sqlite正确实现方法解析
2020/02/05 Python
开启Django博客的RSS功能的实现方法
2020/02/17 Python
python利用opencv实现SIFT特征提取与匹配
2020/03/05 Python
python能做哪方面的工作
2020/06/15 Python
python中Mako库实例用法
2020/12/31 Python
CSS3简单实现照片墙
2014/12/12 HTML / CSS
基于CSS3 animation动画属性实现轮播图效果
2017/09/12 HTML / CSS
瑞贝卡·明可弗包包官网:Rebecca Minkoff
2016/07/21 全球购物
美国新娘礼品店:The Paisley Box
2020/09/08 全球购物
什么是跨站脚本攻击
2014/12/11 面试题
护士医德医风自我评价
2014/09/15 职场文书
手机被没收的检讨书
2014/10/04 职场文书
婚内分居协议书范文
2014/11/26 职场文书
送给教师们,到底该如何写好教学反思?
2019/07/02 职场文书
CSS3点击按钮圆形进度打钩效果的实现代码
2021/03/30 HTML / CSS
Spring Boot mybatis-config 和 log4j 输出sql 日志的方式
2021/07/26 Java/Android
vue项目proxyTable配置和部署服务器
2022/04/14 Vue.js