php合并数组array_merge函数运算符加号与的区别


Posted in PHP onOctober 31, 2008

array_merge在参考手册中的说明如下:
array_merge() 将两个或多个数组的单元合并起来,一个数组中的值附加在前一个数组的后面。返回作为结果的数组。
如果输入的数组中有相同的字符串键名,则该键名后面的值将覆盖前一个值。然而,如果数组包含数字键名,后面的值将不会覆盖原来的值,而是附加到后面。

两个的区别是:

1.数组键名为数字键名时,要合并的两个数组中有同名数字KEY的时候,使用array_merge()不会覆盖掉原来的值,而使用“+”合并数组则会把最先出现的值作为最终结果返回,而把后面的数组拥有相同键名的那些值“抛弃”掉(注意:不是覆盖而是保留最先出现的那个值)。例子:

$array1 = array(1=>'0'); 

$array2 = array(1=> "data"); 
  $result1 = $array2 + $array1;/*结果为$array2的值*/ 
  print_r($result); 
$result = $array1 + $array2 ;/*结果为$array1的值*/ 
print_r($result); 
$result3 = array_merge($array2,$array1);/*结果为$array2和$array1的值,键名被重新分配*/ 
print_r($result3); 
$result4 = array_merge($array1,$array2);/*结果为$array1和$array2的值,键名被重新分配*/ 
print_r($result4);

输出结果为: 
Array 
( 
[1] => data 
) 
Array 
( 
[1] => 0 
) 
Array 
( 
[0] => data 
[1] => 0 
) 
Array 
( 
[0] => 0 
[1] => data 
)

2.当相同数组键名为字符时,“+”运算符与键名为数字时一样,但array_merge()此时会覆盖掉前面相同键名的值。

例子:

$array1 = array('asd'=>'0'); 
$array2 = array('asd' => "data"); 
  $result1 = $array2 + $array1;/*结果为$array2的值*/ 
  print_r($result); 
$result = $array1 + $array2 ;/*结果为$array1的值*/ 
print_r($result); 
$result3 = array_merge($array2,$array1);/*结果为$array1*/ 
print_r($result3); 
$result4 = array_merge($array1,$array2);/*结果为$array2*/ 
print_r($result4);

输出结果为:
Array 
( 
[asd] => data 
) 
Array 
( 
[asd] => 0 
) 
Array 
( 
[asd] => 0 
) 
Array 
( 
[asd] => data 
)
PHP 相关文章推荐
图书管理程序(三)
Oct 09 PHP
常用表单验证类,有了这个,一般的验证就都齐了。
Dec 06 PHP
在PHP中使用模板的方法
May 24 PHP
PHP中批量生成静态html(命令行下运行PHP)
Apr 19 PHP
php使用GD创建保持宽高比缩略图的方法
Apr 17 PHP
PHP变量赋值、代入给JavaScript中的变量
Jun 29 PHP
thinkPHP5 ACL用户权限模块用法详解
May 10 PHP
PHP微信PC二维码登陆的实现思路
Jul 13 PHP
php调用云片网接口发送短信的实现方法
Oct 25 PHP
Laravel 解决composer相关操作提示php相关异常的问题
Oct 23 PHP
详解阿里云视频直播PHP-SDK接入教程
Jul 09 PHP
PHP7 参数处理机制修改
Mar 09 PHP
PHP syntax error, unexpected $end 错误的一种原因及解决
Oct 25 #PHP
smarty的保留变量问题
Oct 23 #PHP
攻克CakePHP系列三 表单数据增删改
Oct 22 #PHP
攻克CakePHP系列二 表单数据显示
Oct 22 #PHP
CakePHP去除默认显示的标题及图标的方法
Oct 22 #PHP
攻克CakePHP系列一 连接MySQL数据库
Oct 22 #PHP
PHP 反射机制实现动态代理的代码
Oct 22 #PHP
You might like
php对数组排序的简单实例
2013/12/25 PHP
老版本PHP转义Json里的特殊字符的函数
2015/06/08 PHP
在WordPress的文章编辑器中设置默认内容的方法
2015/12/29 PHP
PHP实现的DES加密解密实例代码
2016/04/06 PHP
Laravel5框架自定义错误页面配置操作示例
2019/04/17 PHP
javascript函数中的arguments参数
2010/08/01 Javascript
Jquery 跨域访问 Lightswitch OData Service的方法
2013/09/11 Javascript
JavaScript学习笔记之JS对象
2015/01/22 Javascript
利用jQuery实现WordPress中@的ID悬浮显示评论内容
2015/12/11 Javascript
用Vue.js实现监听属性的变化
2016/11/17 Javascript
vue.js指令v-model实现方法
2016/12/05 Javascript
基于bootstrap实现收缩导航条
2017/03/17 Javascript
微信小程序中换行空格(多个空格)写法详解
2018/07/10 Javascript
详解Angular Forms中自定义ngModel绑定值的方式
2018/12/10 Javascript
Python写的PHPMyAdmin暴力破解工具代码
2014/08/06 Python
使用Python将数组的元素导出到变量中(unpacking)
2016/10/27 Python
在Python中使用AOP实现Redis缓存示例
2017/07/11 Python
python 寻找list中最大元素对应的索引方法
2018/06/28 Python
浅谈解除装饰器作用(python3新增)
2018/10/15 Python
Python解析Excle文件中的数据方法
2018/10/23 Python
修改python plot折线图的坐标轴刻度方法
2018/12/13 Python
利用Python正则表达式过滤敏感词的方法
2019/01/21 Python
Python多进程方式抓取基金网站内容的方法分析
2019/06/03 Python
python 怎样将dataframe中的字符串日期转化为日期的方法
2019/09/26 Python
python 日志模块 日志等级设置失效的解决方案
2020/05/26 Python
深入浅析pycharm中 Make available to all projects的含义
2020/09/15 Python
selenium携带cookies模拟登陆CSDN的实现
2021/01/19 Python
HTML5制作3D爱心动画教程 献给女友浪漫的礼物
2014/11/05 HTML / CSS
一站式跨境收款解决方案:Payoneer(派安盈)
2018/09/06 全球购物
优衣库台湾官网:UNIQLO台湾
2019/02/01 全球购物
大学生村官典型材料
2014/01/12 职场文书
酒店值班经理的工作职责范本
2014/02/18 职场文书
《在大海中永生》教学反思
2014/02/24 职场文书
印刷技术专业自荐信
2014/09/18 职场文书
授权委托书怎么写
2014/09/25 职场文书
奖学金个人总结
2015/03/04 职场文书