PHP合并数组+与array_merge的区别分析


Posted in PHP onAugust 01, 2010

主要区别是两个或者多个数组中如果出现相同键名,键名分为字符串或者数字,需要注意

1)键名为数字时,array_merge()不会覆盖掉原来的值,但+合并数组则会把最先出现的值作为最终结果返回,而把后面的数组拥有相同键名的那些值“抛弃”掉(不是覆盖)

2)键名为字符时,+仍然把最先出现的值作为最终结果返回,而把后面的数组拥有相同键名的那些值“抛弃”掉,但array_merge()此时会覆盖掉前面相同键名的值

需要注意的是数组键形式 '数字' 等价于 数字

$a = array('a','b'); 
$b = array('c', 'd'); 
$c = $a + $b; 
var_dump($a); 
var_dump(array_merge($a, $b)); $a = array(0 => 'a', 1 => 'b'); 
$b = array(0 => 'c', 1 => 'b'); 
$c = $a + $b; 
var_dump($c); 
var_dump(array_merge($a, $b)); 
$a = array('a', 'b'); 
$b = array('0' => 'c', 1 => 'b'); 
$c = $a + $b; 
var_dump($c); 
var_dump(array_merge($a, $b)); 
$a = array(0 => 'a', 1 => 'b'); 
$b = array('0' => 'c', '1' => 'b'); 
$c = $a + $b; 
var_dump($c); 
var_dump(array_merge($a, $b));

结果
array 
0 => string 'a' (length=1) 
1 => string 'b' (length=1) 
2 => string 'c' (length=1) 
3 => string 'd' (length=1) array 
0 => string 'a' (length=1) 
1 => string 'b' (length=1) 
array 
0 => string 'a' (length=1) 
1 => string 'b' (length=1) 
2 => string 'c' (length=1) 
3 => string 'b' (length=1) 
array 
0 => string 'a' (length=1) 
1 => string 'b' (length=1) 
array 
0 => string 'a' (length=1) 
1 => string 'b' (length=1) 
2 => string 'c' (length=1) 
3 => string 'b' (length=1) 
array 
0 => string 'a' (length=1) 
1 => string 'b' (length=1) 
array 
0 => string 'a' (length=1) 
1 => string 'b' (length=1) 
2 => string 'c' (length=1) 
3 => string 'b' (length=1)
PHP 相关文章推荐
不用GD库生成当前时间的PNG格式图象的程序
Oct 09 PHP
php生成局部唯一识别码LUID的代码
Oct 06 PHP
关于PHP自动判断字符集并转码的详解
Jun 26 PHP
PHP、Nginx、Apache中禁止网页被iframe引用的方法
Oct 01 PHP
php实现Mysql简易操作类
Oct 11 PHP
php pthreads多线程的安装与使用
Jan 19 PHP
PHP获取不了React Native Fecth参数的解决办法
Aug 26 PHP
windows7配置Nginx+php+mysql的详细教程
Sep 04 PHP
PHP中多线程的两个实现方法
Oct 14 PHP
微信 getAccessToken方法详解及实例
Nov 23 PHP
Laravel5.5新特性之友好报错以及展示详解
Aug 13 PHP
PHP实时统计中文字数和区别
Feb 28 PHP
PHP自定义函数收代码
Aug 01 #PHP
无法在发生错误时创建会话,请检查 PHP 或网站服务器日志,并正确配置 PHP 安装最快的解决办法
Aug 01 #PHP
PHP5中使用PDO连接数据库的方法
Aug 01 #PHP
PHP网站安装程序制作的原理、步骤、注意事项和示例代码
Aug 01 #PHP
PHP Stream_*系列函数
Aug 01 #PHP
php下目前为目最全的CURL中文说明
Aug 01 #PHP
php feof用来识别文件末尾字符的方法
Aug 01 #PHP
You might like
PHP去除数组中重复的元素并按键名排序函数
2008/08/18 PHP
php读取二进制流(C语言结构体struct数据文件)的深入解析
2013/06/13 PHP
php登陆页的密码处理方式分享
2013/10/14 PHP
php mail to 配置详解
2014/01/16 PHP
PHP之autoload运行机制实例分析
2014/08/28 PHP
php 实现301重定向跳转实例代码
2016/07/18 PHP
PHP项目多语言配置平台实现过程解析
2020/05/18 PHP
Js之软键盘实现(js源码)
2007/01/30 Javascript
JavaScript去掉空格的方法集合
2010/12/28 Javascript
JS window对象的top、parent、opener含义介绍
2013/12/03 Javascript
JS中Map和ForEach的区别
2018/02/05 Javascript
Vue项目引发的「过滤器」使用教程
2019/03/12 Javascript
vue 父组件通过$refs获取子组件的值和方法详解
2019/11/07 Javascript
VUE Elemen-ui之穿梭框使用方法详解
2021/01/19 Javascript
vue 使用class创建和清除水印的示例代码
2020/12/25 Vue.js
[54:17]DOTA2-DPC中国联赛定级赛 RNG vs iG BO3第二场 1月10日
2021/03/11 DOTA
python三元运算符实现方法
2013/12/17 Python
python批量提取word内信息
2015/08/09 Python
Python中read()、readline()和readlines()三者间的区别和用法
2017/07/30 Python
Python过滤txt文件内重复内容的方法
2018/10/21 Python
python网络爬虫 CrawlSpider使用详解
2019/09/27 Python
pyqt5实现井字棋的示例代码
2020/12/07 Python
使用css3实现的windows8开机加载动画
2014/12/09 HTML / CSS
Conforama瑞士:家具、厨房、电器、装饰
2020/09/06 全球购物
大学生表扬信范文
2014/01/09 职场文书
大学生怎样写好自荐信
2014/02/25 职场文书
家长对孩子的感言
2014/03/10 职场文书
岗位聘任书范文
2014/03/29 职场文书
初中家长寄语
2014/04/02 职场文书
《火烧云》教学反思
2014/04/12 职场文书
办公室年度工作总结2015
2015/05/21 职场文书
惊涛骇浪观后感
2015/06/05 职场文书
党章学习心得体会2016
2016/01/14 职场文书
CSS3实现的3D隧道效果
2021/04/27 HTML / CSS
Python爬虫基础讲解之请求
2021/05/13 Python
低版本Druid连接池+MySQL驱动8.0导致线程阻塞、性能受限
2021/07/01 MySQL