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 相关文章推荐
WIN98下Apache1.3.14+PHP4.0.4的安装
Oct 09 PHP
php继承的一个应用
Sep 06 PHP
php自动注册登录验证机制实现代码
Dec 20 PHP
探讨php define()函数及defined()函数使用详解
Jun 09 PHP
php数组编码转换示例详解
Mar 11 PHP
初识通用数据库操作类――前端easyui-datagrid,form(php)
Jul 31 PHP
对比PHP对MySQL的缓冲查询和无缓冲查询
Jul 01 PHP
深入解析PHP中SESSION反序列化机制
Mar 01 PHP
PHP获取文件扩展名的方法实例总结
Jun 10 PHP
PHP钩子与简单分发方式实例分析
Sep 04 PHP
Windows下wamp php单元测试工具PHPUnit安装及生成日志文件配置方法
May 28 PHP
php优化查询foreach代码实例讲解
Mar 24 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 远程关机实现代码
2009/11/10 PHP
解析php根据ip查询所在地区(非常有用,赶集网就用到)
2013/07/01 PHP
PHP内核探索:变量存储与类型使用说明
2014/01/30 PHP
你可能不知道PHP get_meta_tags()函数
2014/05/12 PHP
YII模块实现绑定二级域名的方法
2014/07/09 PHP
thinkphp分页实现效果
2016/10/13 PHP
laravel中命名路由的使用方法
2017/02/24 PHP
PHP中常用的三种设计模式详解【单例模式、工厂模式、观察者模式】
2019/06/14 PHP
PHP PDO和消息队列的个人理解与应用实例分析
2019/11/25 PHP
jquery使用ColorBox弹出图片组浏览层实例演示
2013/03/14 Javascript
For循环中分号隔开的3部分的执行顺序探讨
2014/05/27 Javascript
理解javascript中的严格模式
2016/02/01 Javascript
浅谈js构造函数的方法与原型prototype
2016/07/04 Javascript
js修改onclick动作的四种方法(推荐)
2016/08/18 Javascript
JavaScript设计模式之单例模式原理与用法实例分析
2018/07/26 Javascript
vue中使用gojs/jointjs的示例代码
2018/08/24 Javascript
vue+canvas实现炫酷时钟效果的倒计时插件(已发布到npm的vue2插件,开箱即用)
2018/11/05 Javascript
vue实现微信获取用户信息的方法
2019/03/21 Javascript
Vue将页面导出为图片或者PDF
2020/08/17 Javascript
Vue根据条件添加click事件的方式
2019/11/09 Javascript
vue实现折线图 可按时间查询
2020/08/21 Javascript
[49:07]VGJ.T vs Optic Supermajor小组赛D组 BO3 第二场 6.3
2018/06/04 DOTA
跟老齐学Python之深入变量和引用对象
2014/09/24 Python
python使用arp欺骗伪造网关的方法
2015/04/24 Python
python3.4用函数操作mysql5.7数据库
2017/06/23 Python
python如何把嵌套列表转变成普通列表
2018/03/20 Python
python 采用paramiko 远程执行命令及报错解决
2019/10/21 Python
Django之富文本(获取内容,设置内容方式)
2020/05/21 Python
基于html5 canvas做批改作业的小插件
2020/05/20 HTML / CSS
诗狄娜化妆品官方网站:Stila Cosmetics
2016/12/21 全球购物
AP澳洲中文网:澳洲正品直邮,包税收件无忧
2019/07/12 全球购物
公司综合部的成员自我评价分享
2013/11/05 职场文书
金属材料工程毕业生个人的自我评价
2013/11/28 职场文书
高中学校对照检查材料
2014/08/31 职场文书
2014村书记党建工作汇报材料
2014/11/02 职场文书
vue本地构建热更新卡顿的问题“75 advanced module optimization”完美解决方案
2022/08/05 Vue.js