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中数组合并的两种方法及区别介绍的更多相关文章

  1. js中数组遍历的几种方法及其区别

    参考网站: http://www.cnblogs.com/lvmh/p/6104397.html 第一种最常用的:for循环 for(j = 0; j < arr.length; j++) { ...

  2. php获取数组中重复数据的两种方法

    分享下php获取数组中重复数据的两种方法. 1,利用php提供的函数,array_unique和array_diff_assoc来实现 <?php function FetchRepeatMem ...

  3. java中数组复制的两种方式

    在java中数组复制有两种方式: 一:System.arraycopy(原数组,开始copy的下标,存放copy内容的数组,开始存放的下标,需要copy的长度); 这个方法需要先创建一个空的存放cop ...

  4. Ajax中解析Json的两种方法

    eval(); //此方法不推荐 JSON.parse(); //推荐方法 一.两种方法的区别 我们先初始化一个json格式的对象: var jsonDate = '{ "name" ...

  5. Ajax中解析Json的两种方法详解

    eval();  //此方法不推荐 JSON.parse();  //推荐方法 一.两种方法的区别 我们先初始化一个json格式的对象: var jsonDate = '{ "name&qu ...

  6. js中数组去重的几种方法

    js中数组去重的几种方法         1.遍历数组,一一比较,比较到相同的就删除后面的                 function unique(arr){                 ...

  7. [转]Qt中定时器使用的两种方法

    Qt中定时器的使用有两种方法,一种是使用QObject类提供的定时器,还有一种就是使用QTimer类. 其精确度一般依赖于操作系统和硬件,但一般支持20ms.下面将分别介绍两种方法来使用定时器. 方法 ...

  8. python中执行shell的两种方法总结

    这篇文章主要介绍了python中执行shell的两种方法,有两种方法可以在Python中执行SHELL程序,方法一是使用Python的commands包,方法二则是使用subprocess包,这两个包 ...

  9. JavaScript中数组去重的几种方法

    JavaScript中数组去重的几种方法 正常情况下,数据去重的工作一般都是由后端同事来完成的,但是前端也要掌握好处理数据的能力,万一去重的工作交给我们大前端处理,我们也不能怂呀.现在我总结了一些去重 ...

随机推荐

  1. Codeforces Round #Pi (Div. 2) B. Berland National Library set

    B. Berland National LibraryTime Limit: 2 Sec Memory Limit: 256 MB 题目连接 http://codeforces.com/contest ...

  2. 在crontab中动态写日志

    45 3 * * * setsid script -c /home/dlht/shell/coreBusiness/coreOpt.sh  >> /home/dlht/logs/coreO ...

  3. nodeAPI--FS

    fs是唯一一个同时提供同步和异步API的模块: 读取文件夹文件名,数组形式返回: var fs = require('fs'); //async fs.readdir('./',function(er ...

  4. Xamarin iOS编写第一个应用程序创建工程

    Xamarin iOS编写第一个应用程序创建工程 在Xcode以及Xamarin安装好后,就可以在Xamarin Studio中编写程序了.本节将主要讲解在Xamarin Studio中如何进行工程的 ...

  5. 17111 Football team

    时间限制:1000MS  内存限制:65535K 提交次数:0 通过次数:0 题型: 编程题   语言: C++;C Description As every one known, a footbal ...

  6. BZOJ4377 : [POI2015]Kurs szybkiego czytania

    因为$a$与$n$互质,所以对于$0$到$n-1$里每个$i$,$ai\bmod n$的值互不相同. 设匹配成功的起点为$i$,那么可以得到$3m$段$ai\bmod n$的值不能取的禁区,每段都是连 ...

  7. BZOJ4289 : PA2012 Tax

    一个直观的想法是把每条边拆成两条有向边,同时每条有向边是新图中的一个点.对于两条边a->b与b->c,两点之间连有向边,费用为两条边费用的最大值.然后新建源点S与汇点T,由S向所有起点为1 ...

  8. BZOJ3103 : Palindromic Equivalence

    用Manacher可以推出O(n)对相等和不等关系. 将相等的用并查集维护,不等的连边. 然后从1到n,如果该等价类还没被考虑过,则ans*=26-与它不等的考虑过的等价类个数. #include&l ...

  9. IE6/7/8兼容问题、时间对象返回NAN

    IE浏览器不支持new Date()带"2,31,2013"这样格式的参数,要换成“2/31/2013”.'2013-05-05'.replace(/-/g,'/')

  10. BZOJ3809: Gty的二逼妹子序列

    Description Autumn和Bakser又在研究Gty的妹子序列了!但他们遇到了一个难题.   对于一段妹子们,他们想让你帮忙求出这之内美丽度∈[a,b]的妹子的美丽度的种类数.   为了方 ...