php下将多个数组合并成一个数组的方法与实例代码


Posted in PHP onFebruary 03, 2011

1.合并数组
array_merge()函数将数组合并到一起,返回一个联合的数组。所得到的数组以第一个输入数组参数开始,按后面数组参数出现的顺序依次迫加。其形式为:

array array_merge (array array1 array2…,arrayN)

将一个或多个数组的单元合并起来,一个数组中的值附加在前一个数组的后面。返回作为结果的数组。
如果输入的数组中有相同的字符串键名,则该键名后面的值将覆盖前一个值。然而,如果数组包含数字键名,后面的值将不会覆盖原来的值,而是附加到后面。
如果只给了一个数组并且该数组是数字索引的,则键名会以连续方式重新索引。
实例如下:
$face = array("J","Q","K","A"); 
$numbered = array("2","3","4","5","6","7","8","9"); 
$cards = array_merge($face, $numbered); 
shuffle($cards); 
print_r($cards);

这将返回如下所示的结果,运行代码:
Array ( [0] => A [1] => 4 [2] => 9 [3] => 3 [4] => K [5] => 7 [6] => 5 [7] => Q [8] => 6 [9] => 8 [10] => 2 [11] => J )

2.递归追加数组
array_merge_recursive()函数与array_merge()相同,可以将两个或多个数组合并在一起,形成一个联合的数组.两者之间的区别在于,当某个输入数组中的某个键己经存在于结果数组中时该函数会采取不同的处理方式.array_merge()会覆盖前面存在的键/值对,替换为当前输入数组中的键/值对,而array_merge_recursive()将把两个值合并在一起,形成一个新的数组,并以原有的键作为数组名。还有一个数组合并的形式,就是递归追加数组。其形式为:
view sourceprint?array array_merge_recursive( array key,array values )

示例如下:

$class1 = array("John" => 100, "James" => 85); 
$class2 = array("Micky" => 78, "John" => 45); 
$classScores = array_merge_recursive($class1, $class2); 
print_r($classScores);

这将返回如下结果:
view sourceprint?Array ( [John] => Array ( [0] => 100 [1] => 45 ) [James] => 85 [Micky] => 78 )

3.连接两个数组
array_combine()函数会得到一个新数组,它由一组提交的键和对应的值组成。其形式为:
view sourceprint?array array_merge(array array1,array array2[…,array arrayN])

注意,两个输入数组必须大小相同,不能为空。示例如下:

$abbreviations = array("AL","AK","AZ","AR"); 
$states = array("Alabama","Alaska","Arizona","Arkansas"); 
$stateMap = array_combine($abbreviations,$states); 
print_r($stateMap);

这会返回:
Array ( [AL] => Alabama [AK] => Alaska [AZ] => Arizona [AR] => Arkansas )
PHP 相关文章推荐
PHP Squid中可缓存的动态网页设计
Sep 17 PHP
php addslashes和mysql_real_escape_string
Jan 24 PHP
php strcmp使用说明
Apr 22 PHP
PHP中3种生成XML文件方法的速度效率比较
Oct 06 PHP
7个鲜为人知却非常实用的PHP函数
Jul 01 PHP
百万级别知乎用户数据抓取与分析之PHP开发
Sep 28 PHP
YII Framework框架教程之日志用法详解
Mar 14 PHP
php 算法之实现相对路径的实例
Oct 17 PHP
PHP封装的XML简单操作类完整实例
Nov 13 PHP
PHP PDOStatement::rowCount讲解
Feb 01 PHP
PHP强制转化的形式整理
May 22 PHP
PHP7新增函数
Mar 09 PHP
PHP操作数组相关函数
Feb 03 #PHP
php做下载文件的实现代码及文件名中乱码解决方法
Feb 03 #PHP
PHP+SQL 注入攻击的技术实现以及预防办法
Jan 27 #PHP
php5 apache 2.2 webservice 创建与配置(java)
Jan 27 #PHP
使用XDebug调试及单元测试覆盖率分析
Jan 27 #PHP
仿AS3实现PHP 事件机制实现代码
Jan 27 #PHP
PHP 命名空间实例说明
Jan 27 #PHP
You might like
PHP 页面跳转到另一个页面的多种方法方法总结
2009/07/07 PHP
PHP开发不能违背的安全规则 过滤用户输入
2011/05/01 PHP
PHP基础教程(php入门基础教程)一些code代码
2013/01/06 PHP
php通过array_unshift函数添加多个变量到数组前端的方法
2015/03/18 PHP
php使用正则表达式去掉html中的注释方法
2016/11/03 PHP
比较简单实用的使用正则三种版本的js去空格处理方法
2007/11/18 Javascript
js下获得客户端操作系统的函数代码(1:vista,2:windows7,3:2000,4:xp,5:2003,6:2008)
2011/10/31 Javascript
js解析与序列化json数据(一)json.stringify()的基本用法
2013/02/01 Javascript
用函数模板,写一个简单高效的 JSON 查询器的方法介绍
2013/04/17 Javascript
JavaScript自定义事件介绍
2013/08/29 Javascript
jQuery中on()方法用法实例
2015/01/19 Javascript
基于jquery实现动态竖向柱状条特效
2016/02/12 Javascript
JS中多步骤多分步的StepJump组件实例详解
2016/04/01 Javascript
AngularJS API之copy深拷贝详解及实例
2016/09/14 Javascript
vue.js学习之递归组件
2016/12/13 Javascript
angular仿支付宝密码框输入效果
2017/03/25 Javascript
详解vue 兼容IE报错解决方案
2018/12/29 Javascript
django传值给模板, 再用JS接收并进行操作的实例
2018/05/28 Python
python paramiko利用sftp上传目录到远程的实例
2019/01/03 Python
Python多进程写入同一文件的方法
2019/01/14 Python
python 实现查找文件并输出满足某一条件的数据项方法
2019/06/12 Python
Python3 解决读取中文文件txt编码的问题
2019/12/20 Python
tensorflow生成多个tfrecord文件实例
2020/02/17 Python
python定义类的简单用法
2020/07/24 Python
如何完美的建立一个python项目
2020/10/09 Python
香港优质食材和美酒专门店:FoodWise
2017/09/01 全球购物
意大利在线大学图书馆:Libreria universitaria
2019/07/16 全球购物
大学在校生求职信范文
2013/11/21 职场文书
配件采购员岗位职责
2013/12/03 职场文书
财务会计专业求职信范文
2013/12/31 职场文书
复核员上岗演讲稿
2014/01/05 职场文书
2015年幼儿园班主任工作总结
2015/05/12 职场文书
校园广播站开场白
2015/06/01 职场文书
在校大学生才艺比赛策划书怎么写?
2019/08/26 职场文书
nginx结合openssl实现https的方法
2021/07/25 Servers
Mysql中@和@@符号的详细使用指南
2022/06/05 MySQL