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实现批量查询清除一句话后门的代码
Jan 20 PHP
通过PHP CLI实现简单的数据库实时监控调度
Jul 01 PHP
php数组一对一替换实现代码
Aug 31 PHP
PHP daddslashes 使用方法介绍
Oct 26 PHP
ubuntu下编译安装xcache for php5.3 的具体操作步骤
Jun 18 PHP
ThinkPHP中ajax使用实例教程
Aug 22 PHP
Laravel 4 初级教程之视图、命名空间、路由
Oct 30 PHP
php字符串分割函数用法实例
Mar 17 PHP
php curl模拟post请求和提交多维数组的示例代码
Nov 19 PHP
PHP面向对象继承用法详解(优化与减少代码重复)
Dec 02 PHP
PHP实现的简单异常处理类示例
May 04 PHP
PHPstorm启用自动换行的方法详解(IDE)
Sep 17 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中加session验证)
2012/08/22 PHP
php实现基于PDO的预处理示例
2017/03/28 PHP
PHP在同一域名下两个不同的项目做独立登录机制详解
2017/09/22 PHP
JS option location 页面跳转实现代码
2008/12/27 Javascript
IE innerHTML,outerHTML所引起的问题
2009/06/04 Javascript
网页源代码保护(禁止右键、复制、另存为、查看源文件)
2012/05/23 Javascript
js showModalDialog参数的使用详解
2014/01/07 Javascript
jQuery实用函数用法总结
2014/08/29 Javascript
javascript的函数作用域
2014/11/12 Javascript
JS+CSS实现模仿浏览器网页字符查找功能的方法
2015/02/26 Javascript
讲解JavaScript中for...in语句的使用方法
2015/06/03 Javascript
javascript背景时钟实现方法
2015/06/18 Javascript
jQuery实现鼠标滑过预览图片大图效果的方法
2017/04/26 jQuery
JS Testing Properties 判断属性是否在对象里的方法
2017/10/01 Javascript
微信小程序Flex布局用法深入浅出分析
2019/04/25 Javascript
微信小程序自定义组件传值 页面和组件相互传数据操作示例
2019/05/05 Javascript
使用Easyui实现查询条件的后端传递并自动刷新表格的两种方法
2019/09/09 Javascript
微信小程序跨页面传递data数据方法解析
2019/12/13 Javascript
JS数组push、unshift、pop、shift方法的实现与使用方法示例
2020/04/29 Javascript
[44:04]OG vs Mineski 2018国际邀请赛小组赛BO2 第一场 8.17
2018/08/18 DOTA
python发送伪造的arp请求
2014/01/09 Python
深入解答关于Python的11道基本面试题
2017/04/01 Python
Python中矩阵创建和矩阵运算方法
2018/08/04 Python
Python 使用 docopt 解析json参数文件过程讲解
2019/08/13 Python
Python爬虫 批量爬取下载抖音视频代码实例
2019/08/16 Python
pytorch 利用lstm做mnist手写数字识别分类的实例
2020/01/10 Python
Python连接Oracle之环境配置、实例代码及报错解决方法详解
2020/02/11 Python
45个非常奇妙的CSS3 特性应用示例
2012/01/01 HTML / CSS
雅诗兰黛香港官网:Estee Lauder香港
2017/09/26 全球购物
顶丰TOPPIK台湾官网:增发纤维假发,告别秃发困扰
2018/06/13 全球购物
企业员工培训感言
2014/02/26 职场文书
保护环境倡议书
2014/04/14 职场文书
幼儿园大班家长评语
2014/04/17 职场文书
小班评语大全
2014/05/04 职场文书
中秋晚会策划方案
2014/06/12 职场文书
学前教育见习总结
2015/06/23 职场文书