php中用加号与用array_merge合并数组的区别深入分析


Posted in PHP onJune 03, 2013

我们首先给出两个数组

    <?php  
     $r = array(1,2,3,4,5,6);  
     $e = array(7,8,9,10);  
    ?> 

下面我们用array_merge和加号来何必这两数组
    <?php  
    print_r($r+e); // 输出<span style="font-family: Simsun;font-size:16px; ">Array ( [0] => 1 [1] => 2 [2] => 3 [3] => 4 [4] => 5 [5] => 6 ) </span>  
    print "<br />";  
    print_r(array_merge($r,$e)); // 输出<span style="font-family: Simsun;font-size:16px; ">Array ( [0] => 1 [1] => 2 [2] => 3 [3] => 4 [4] => 5 [5] => 6 [6] => 7 [7] => 8 [8] => 9 )</span>  
    ?> 

从这里可以看出,用array_merge合并数组一个数组中的值附加在前一个数组的后面。返回作为结果的数组如果数组包含数字键名,后面的值将不会覆盖原来的值,而是附加到后面。 然而用加号来合并数组如果键名相同,则取最先出现的数组值,后面的就直接忽略掉
下面我们来改变下前面给出的数组
    <?php  
     $r = array('r'=>1,2,3,4,5,6);  
     $e = array(<span style="background-color: rgb(245, 250, 255); ">'r'=></span>7,8,9,10);  
    ?> 

    <?php  
    print_r($r+e); // 输出Array ( [r] => 1 [0] => 2 [1] => 3 [2] => 4 [3] => 5 [4] => 6 )  
    print "<br />";  
    print_r(array_merge($r,$e)); // 输出Array ( [0] => 1 [1] => 2 [2] => 3 [3] => 4 [4] => 5 [5] => 6 [6] => 7 [7] => 8 [8] => 9 )  
    ?> 

从这里可以看出,用array_merge合并数组一个数组中的值附加在前一个数组的后面。如果非数字键名相同,则后面数组的值会覆盖前面数组的值。 然而用加号来合并数组如果键名相同,则取最先出现的数组值,后面的就直接忽略掉
PHP 相关文章推荐
PHP 的几个配置文件函数
Dec 21 PHP
PHP 文件上传功能实现代码
Jun 24 PHP
PHP企业级应用之常见缓存技术篇
Jan 27 PHP
php file_put_contents()功能函数(集成了fopen、fwrite、fclose)
May 24 PHP
PHP输出时间差函数代码
Jan 28 PHP
php删除一个路径下的所有文件夹和文件的方法
Feb 07 PHP
在PHP中输出JS语句以及乱码问题的解决方案
Feb 13 PHP
Laravel5.7框架安装与使用学习笔记图文详解
Apr 02 PHP
docker-compose部署php项目实例详解
Jul 30 PHP
Laravel 默认邮箱登录改成用户名登录的实现方法
Aug 12 PHP
laravel框架上传图片实现实时预览功能
Oct 14 PHP
php设计模式之建造器模式分析【星际争霸游戏案例】
Jan 23 PHP
PHP在线生成二维码代码(google api)
Jun 03 #PHP
深入探讨:Nginx 502 Bad Gateway错误的解决方法
Jun 03 #PHP
深入php-fpm的两种进程管理模式详解
Jun 03 #PHP
PHP 异步执行方法,模拟多线程的应用分析
Jun 03 #PHP
基于PHP异步执行的常用方式详解
Jun 03 #PHP
php生成二维码的几种方式整理及使用实例
Jun 03 #PHP
深入PHP异步执行的详解
Jun 03 #PHP
You might like
创建数据库php代码 用PHP写出自己的BLOG系统
2010/04/12 PHP
php获取操作系统语言代码
2013/11/04 PHP
php使用curl和正则表达式抓取网页数据示例
2014/04/13 PHP
php防止网站被刷新的方法汇总
2014/12/01 PHP
基于Jquery插件开发之图片放大镜效果(仿淘宝)
2011/11/19 Javascript
javascript SpiderMonkey中的函数序列化如何进行
2012/12/05 Javascript
javascript面向对象之对象的深入理解
2015/01/13 Javascript
用队列模拟jquery的动画算法实例
2015/01/20 Javascript
javascript动态添加checkbox复选框的方法
2015/12/23 Javascript
js实现文字滚动效果
2016/03/03 Javascript
vue通过watch对input做字数限定的方法
2017/07/13 Javascript
简单实现jquery隔行变色
2017/11/09 jQuery
Js面试算法详解
2018/04/08 Javascript
详解开发react应用最好用的脚手架 create-react-app
2018/04/24 Javascript
用npm安装vue和vue-cli,并使用webpack创建项目的方法
2018/09/28 Javascript
用Electron写个带界面的nodejs爬虫的实现方法
2019/01/29 NodeJs
详解在微信小程序的JS脚本中使用Promise来优化函数处理
2019/03/06 Javascript
jQuery内容选择器与表单选择器实例分析
2019/06/28 jQuery
Jquery+javascript实现支付网页数字键盘
2020/12/21 jQuery
Windows8下安装Python的BeautifulSoup
2015/01/22 Python
python实现SMTP邮件发送功能
2020/06/16 Python
Windows环境下python环境安装使用图文教程
2018/03/13 Python
django中模板的html自动转意方法
2018/05/27 Python
pygame实现贪吃蛇游戏(上)
2019/10/29 Python
python 伯努利分布详解
2020/02/25 Python
pytorch 计算ConvTranspose1d输出特征大小方式
2020/06/23 Python
pytorch Dataset,DataLoader产生自定义的训练数据案例
2021/03/03 Python
CSS3弹性伸缩布局之box布局
2016/07/12 HTML / CSS
html5 Canvas画图教程(8)—canvas里画曲线之bezierCurveTo方法
2013/01/09 HTML / CSS
html5模拟平抛运动(模拟小球平抛运动过程)
2013/07/25 HTML / CSS
P D PAOLA意大利官网:西班牙著名的珠宝首饰品牌
2019/09/24 全球购物
销售主管的自我评价分享
2014/01/03 职场文书
药剂专业自荐书
2014/06/20 职场文书
盲山观后感
2015/06/11 职场文书
公司周年庆典致辞
2015/07/30 职场文书
《我是什么》教学反思
2016/02/16 职场文书