PHP获取数组中指定的一列实例


Posted in PHP onDecember 27, 2017

对于一个多维数组(以二维数组为例),经常需要获取到其中的一列,比如有几条用户数据,是一个二维数组,现在需要获取到这几个用户的名字,可以有多种方法实现:

$arr = array(
	array(
		'id'=>'101',
		'name'=>'qu',
		'age'=>28
	),
	array(
		'id'=>'102',
		'name'=>'you',
		'age'=>24
	),
	array(
		'id'=>'103',
		'name'=>'zheng',
		'age'=>22
	),
	array(
		'id'=>'104',
		'name'=>'zhu',
		'age'=>23
	)
);

方法一:使用PHP内置函数array_column()实现

array array_column ( array $input , mixed $column_key [, mixed $index_key ] )

执行语句:

$result = array_column($arr,'name'); 
print_r($result);

结果如下:

Array 
( 
 [0] => qu 
 [1] => you 
 [2] => zheng 
 [3] => zhu 
)

如果指定了可选参数index_key,那么input数组中的这一列的值将作为返回数组中对应值的键。

$result = array_column($arr,'name','id'); 
print_r($result);

结果如下:

Array 
( 
 [101] => qu 
 [102] => you 
 [103] => zheng 
 [104] => zhu 
)

方法二:使用PHP内置函数array_map()实现

array array_map ( callable $callback , array $arr1 [, array $... ] )

array_map() 返回一个数组,该数组包含了 arr1 中的所有单元经过 callback 作用过之后的单元。其中第一个参数是一个回调函数,返回值是一个数组,该数组的每个元素都数组(arr1)里面的每个元素经过回调函数(callback)处理了的。

先声明一个处理函数:

function get_val($arr){ 
 return $arr['name']; 
}

然后作用于array_map()函数:

$result = array_map('get_val',$arr); 
print_r($result);

执行结果如下:

Array 
( 
 [0] => qu 
 [1] => you 
 [2] => zheng 
 [3] => zhu 
)

此处array_map()的第一个参数是一个回调函数,而且是事先定义好的有名函数,这里我们也可以像js一样使用匿名函数:

$result = array_map(function($v){ 
 return $v['name']; 
},$arr);

其执行结果是一样的。

以上这篇PHP获取数组中指定的一列实例就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

PHP 相关文章推荐
删除数组元素实用的PHP数组函数
Aug 18 PHP
zen cart新进商品的随机排序修改方法
Sep 10 PHP
使用php+apc实现上传进度条且在IE7下不显示的问题解决方法
Apr 25 PHP
关于PHP堆栈与列队的学习
Jun 21 PHP
php图片缩放实现方法
Feb 20 PHP
php中隐形字符65279(utf-8的BOM头)问题
Aug 16 PHP
thinkphp中空模板与空模块的用法实例
Nov 26 PHP
Thinkphp和onethink实现微信支付插件
Apr 13 PHP
php while循环控制的简单实例
May 30 PHP
Thinkphp框架中D方法与M方法的区别
Dec 23 PHP
Laravel框架学习笔记之批量更新数据功能
May 30 PHP
Thinkphp5框架简单实现钩子(Hook)行为的方法示例
Sep 03 PHP
快速解决PHP调用Word组件DCOM权限的问题
Dec 27 #PHP
详解Yaf框架PHPUnit集成测试方法
Dec 27 #PHP
Laravel中使用Queue的最基本操作教程
Dec 27 #PHP
php获取ajax的headers方法与内容实例
Dec 27 #PHP
PHP实现求连续子数组最大和问题2种解决方法
Dec 26 #PHP
PHP基于双向链表与排序操作实现的会员排名功能示例
Dec 26 #PHP
thinkphp5 URL和路由的功能详解与实例
Dec 26 #PHP
You might like
深入了解php4(2)--重访过去
2006/10/09 PHP
PHP 和 XML: 使用expat函数(三)
2006/10/09 PHP
PHP连接Access数据库的方法小结
2013/06/20 PHP
Apache实现Web Server负载均衡详解(不考虑Session版)
2013/07/05 PHP
linux下编译安装memcached服务
2014/08/03 PHP
php获取指定日期之间的各个周和月的起止时间
2014/11/24 PHP
浅谈PHP安全防护之Web攻击
2017/01/03 PHP
laravel数据库查询结果自动转数组修改实例
2021/02/27 PHP
JavaScript 获得选中文本内容的方法
2009/02/15 Javascript
Js四则运算函数代码
2012/07/21 Javascript
AngularJS中的模块详解
2015/01/29 Javascript
理解javascript函数式编程中的闭包(closure)
2016/03/08 Javascript
JS对HTML表格进行增删改操作
2016/08/22 Javascript
JQuery中解决重复动画的方法
2016/10/17 Javascript
自定义类似于jQuery UI Selectable 的Vue指令v-selectable
2017/08/23 jQuery
javascript获取指定区间范围随机数的方法
2017/09/08 Javascript
浅谈Vue SSR 的 Cookies 问题
2017/11/20 Javascript
Webpack 4如何动态切割JS注入文件名详解
2019/07/09 Javascript
[01:14]TI珍贵瞬间系列(六):冠军
2020/08/30 DOTA
pyqt4教程之实现windows窗口小示例分享
2014/03/07 Python
python获取本机mac地址和ip地址的方法
2015/04/29 Python
Python实现程序判断季节的代码示例
2019/01/28 Python
python爬虫之自制英汉字典
2019/06/24 Python
PyQt5响应回车事件的方法
2019/06/25 Python
Python中pymysql 模块的使用详解
2019/08/12 Python
PyTorch的自适应池化Adaptive Pooling实例
2020/01/03 Python
pyftplib中文乱码问题解决方案
2020/01/11 Python
环境科学专业优秀毕业生自荐书
2014/02/03 职场文书
2014年元旦感言
2014/03/06 职场文书
《李时珍夜宿古寺》教学反思
2014/04/09 职场文书
学校对教师的评语
2014/04/28 职场文书
推荐信模板
2014/05/09 职场文书
校本教研活动总结
2014/07/01 职场文书
副校长竞聘演讲稿
2014/09/01 职场文书
先进人物事迹材料
2014/12/29 职场文书
2016年大学生社会实践心得体会
2015/10/09 职场文书