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 相关文章推荐
phpfans留言版用到的数据操作类和分页类
Jan 04 PHP
Discuz板块横排显示图片的实现方法
May 28 PHP
PHP 开源AJAX框架14种
Aug 24 PHP
php数组函数序列之array_flip() 将数组键名与值对调
Nov 07 PHP
PHP实现多进程并行操作的详解(可做守护进程)
Jun 18 PHP
PHP中VC6、VC9、TS、NTS版本的区别与用法详解
Oct 26 PHP
php基于双向循环队列实现历史记录的前进后退等功能
Aug 08 PHP
PHP实现查询两个数组中不同元素的方法
Feb 23 PHP
PHP文件系统管理(实例讲解)
Sep 19 PHP
原生JS实现Ajax通过POST方式与PHP进行交互的方法示例
May 12 PHP
PHP正则判断一个变量是否为正整数的方法
Feb 27 PHP
mongodb和php的用法详解
Mar 25 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 Zip解压 文件在线解压缩的函数代码
2010/05/26 PHP
PHP扩展模块Pecl、Pear以及Perl的区别
2014/04/09 PHP
php上传文件问题汇总
2015/01/30 PHP
php使用curl_init()和curl_multi_init()多线程的速度比较详解
2018/08/15 PHP
收藏一些不常用,但是有用的代码
2007/03/12 Javascript
jquery插件制作 手风琴Panel效果实现
2012/08/17 Javascript
把jquery 的dialog和ztree结合实现步骤
2013/08/02 Javascript
javascript中clipboardData对象用法详解
2015/05/13 Javascript
jQuery Real Person验证码插件防止表单自动提交
2015/11/06 Javascript
jquery通过扩展select控件实现支持enter或focus选择的方法
2015/11/19 Javascript
angularjs创建弹出框实现拖动效果
2020/08/25 Javascript
jQuery的deferred对象使用详解
2016/09/25 Javascript
关于JavaScript和jQuery的类型判断详解
2016/10/08 Javascript
基于Vue开发数字输入框组件
2017/12/19 Javascript
JS中使用textPath实现线条上的文字
2017/12/25 Javascript
ionic3实战教程之随机布局瀑布流的实现方法
2017/12/28 Javascript
element ui table 增加筛选的方法示例
2018/11/02 Javascript
引入外部js脚本加载慢与页面白屏问题的解决
2018/12/10 Javascript
Python实现的json文件读取及中文乱码显示问题解决方法
2018/08/06 Python
对python遍历文件夹中的所有jpg文件的实例详解
2018/12/08 Python
对Python捕获控制台输出流的方法详解
2019/01/07 Python
Python基本socket通信控制操作示例
2019/01/30 Python
python如何爬取网站数据并进行数据可视化
2019/07/08 Python
Python Django 命名空间模式的实现
2019/08/09 Python
Python基础之字符串操作常用函数集合
2020/02/09 Python
python 安装impala包步骤
2020/03/28 Python
纯DOM+CSS3实现简单的小风车动画
2016/09/27 HTML / CSS
CSS3 选择器 基本选择器介绍
2012/01/21 HTML / CSS
GANT英国官方网上商店:甘特衬衫
2018/02/06 全球购物
Joules官网:女士、男士和儿童服装和鞋类
2018/10/23 全球购物
女孩每月服装订阅盒:kidpik
2019/04/17 全球购物
三提三创主题教育活动查摆整改措施
2014/10/25 职场文书
如何用JavaScript实现一个数组惰性求值库
2021/05/05 Javascript
「偶像大师 MILLION LIVE!」七尾百合子手办开订
2022/03/21 日漫
Win11电脑显示本地时间与服务器时间不一致怎么解决?
2022/04/05 数码科技
CSS 鼠标点击拖拽效果的实现代码
2022/12/24 HTML / CSS