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 相关文章推荐
如何对PHP程序中的常见漏洞进行攻击
Oct 09 PHP
限制ckeditor上传图片文件大小的方法
Nov 15 PHP
浅析php适配器模式(Adapter)
Nov 25 PHP
PHP 实现判断用户是否手机访问
Jan 21 PHP
php+mysqli实现将数据库中一张表信息打印到表格里的方法
Jan 28 PHP
nginx+thinkphp下解决不支持pathinfo模式
Jul 01 PHP
thinkphp autoload 命名空间自定义 namespace
Jul 17 PHP
PHP针对中英文混合字符串长度判断及截取方法示例
Mar 31 PHP
如何修改Laravel中url()函数生成URL的根地址
Aug 11 PHP
PHP大文件分块上传功能实例详解
Jul 22 PHP
php设计模式之抽象工厂模式分析【星际争霸游戏案例】
Jan 23 PHP
PHPStorm2020.1永久激活及下载更新至2020(推荐)
Sep 25 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 分页类(模仿google)-面试题目解答
2009/09/13 PHP
用php实现让页面只能被百度gogole蜘蛛访问的方法
2009/12/29 PHP
详解WordPress开发中wp_title()函数的用法
2016/01/07 PHP
利用laravel+ajax实现文件上传功能方法示例
2017/08/13 PHP
JQuery 将元素显示在屏幕的中央的代码
2010/02/27 Javascript
精通JavaScript 纠正 cleanWhitespace函数
2010/03/11 Javascript
javascript模拟的Ping效果代码 (Web Ping)
2011/03/13 Javascript
js点击更换背景颜色或图片的实例代码
2013/06/25 Javascript
教你如何在 Javascript 文件里使用 .Net MVC Razor 语法
2014/07/23 Javascript
jQuery不兼容input的change事件问题解决过程
2014/12/05 Javascript
JS动态添加Table的TR,TD实现方法
2015/01/28 Javascript
JavaScript多线程详解
2015/08/12 Javascript
深入理解MVC中的时间js格式化
2016/05/19 Javascript
AngularJS基础 ng-mouseenter 指令示例代码
2016/08/02 Javascript
canvas实现刮刮卡效果
2017/03/14 Javascript
vue父子组件的嵌套的示例代码
2017/09/08 Javascript
解决layui批量传值到后台操作时出现传值为空的问题
2019/09/28 Javascript
python实现多线程暴力破解登陆路由器功能代码分享
2015/01/04 Python
用python写的一个wordpress的采集程序
2016/02/27 Python
Python线程创建和终止实例代码
2018/01/20 Python
Python Flask异步发送邮件实现方法解析
2020/08/01 Python
python高级特性简介
2020/08/13 Python
使用JS+CSS3技术:让你的名字动起来
2013/04/27 HTML / CSS
HTML5 Canvas 破碎重组的视频特效的示例代码
2019/09/24 HTML / CSS
P/Invoke是什么
2015/07/31 面试题
小学运动会入场式解说词
2014/02/18 职场文书
平安工地建设方案
2014/05/06 职场文书
机电一体化毕业生自荐信
2014/06/19 职场文书
趣味运动会广播稿
2014/09/13 职场文书
三人合伙协议书范本
2014/10/29 职场文书
2014年节能降耗工作总结
2014/12/11 职场文书
老公出轨后的保证书
2015/05/08 职场文书
写给消防战士们的一封慰问信
2019/10/07 职场文书
QT连接MYSQL数据库的详细步骤
2021/07/07 MySQL
理解python中装饰器的作用
2021/07/21 Python
使用python创建股票的时间序列可视化分析
2022/03/03 Python