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中“简单工厂模式”实例代码讲解
Sep 04 PHP
关于访问控制的一首PHP面试题(对属性或方法的访问控制)
Sep 13 PHP
ini_set的用法介绍
Jan 07 PHP
ThinkPHP视图查询详解
Jun 30 PHP
PHP中isset与array_key_exists的区别实例分析
Jun 02 PHP
PHP获取文件行数的方法
Jun 10 PHP
PHP+MySQL实现无极限分类栏目的方法
Dec 23 PHP
CI框架数据库查询缓存优化的方法
Nov 21 PHP
layui框架实现文件上传及TP3.2.3(thinkPHP)对上传文件进行后台处理操作示例
May 12 PHP
PHP实现微信提现(企业付款到零钱)
Aug 01 PHP
在laravel框架中实现封装公共方法全局调用
Oct 14 PHP
PHP 命名空间和自动加载原理与用法实例分析
Apr 29 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
php读取mysql中文数据出现乱码的解决方法
2013/08/16 PHP
PHP防范SQL注入的具体方法详解(测试通过)
2014/05/09 PHP
mysql desc(DESCRIBE)命令实例讲解
2016/09/24 PHP
详谈PHP中的密码安全性Password Hashing
2017/02/04 PHP
php 静态属性和静态方法区别详解
2017/04/09 PHP
Nigma vs Liquid BO3 第二场2.14
2021/03/10 DOTA
Jquery 获取checkbox的checked问题
2011/11/16 Javascript
js面向对象之静态方法和静态属性实例分析
2015/01/10 Javascript
js实现格式化金额,字符,时间的方法
2015/02/26 Javascript
JQuery中两个ul标签的li互相移动实现方法
2015/05/18 Javascript
实例剖析AngularJS框架中数据的双向绑定运用
2016/03/04 Javascript
详解Angular的8个主要构造块
2017/06/20 Javascript
详解angularJS自定义指令间的相互交互
2017/07/05 Javascript
js动态添加表格逐行添加、删除、遍历取值的实例代码
2018/01/25 Javascript
jQuery实现的简单对话框拖动功能示例
2018/06/05 jQuery
JavaScript显式数据类型转换详解
2019/03/18 Javascript
使用微信SDK自定义分享的方法
2019/07/03 Javascript
JavaScript实现的弹出遮罩层特效经典示例【基于jQuery】
2019/07/10 jQuery
JS如何实现动态添加的元素绑定事件
2019/11/12 Javascript
Vue中import from的来源及省略后缀与加载文件夹问题
2020/02/09 Javascript
基于脚手架创建Vue项目实现步骤详解
2020/08/03 Javascript
Python爬虫利用cookie实现模拟登陆实例详解
2017/01/12 Python
详谈python read readline readlines的区别
2017/09/22 Python
python实现神经网络感知器算法
2017/12/20 Python
python2.6.6如何升级到python2.7.14
2018/04/08 Python
caffe binaryproto 与 npy相互转换的实例讲解
2018/07/09 Python
创建Django项目图文实例详解
2019/06/06 Python
Python使用itchat模块实现简单的微信控制电脑功能示例
2019/08/26 Python
使用pygame写一个古诗词填空通关游戏
2019/12/03 Python
浅谈如何使用python抓取网页中的动态数据实现
2020/08/17 Python
澳大利亚小众服装品牌:Maurie & Eve
2018/03/27 全球购物
Lovedrobe官网:英国领先的大码服装品牌
2019/09/19 全球购物
乌克兰珠宝大卖场:Zlato.ua
2020/09/27 全球购物
勤俭节约倡议书
2014/04/14 职场文书
重阳节活动主持词
2015/07/04 职场文书
HTML实现仿Windows桌面主题特效的实现
2022/06/28 HTML / CSS