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 相关文章推荐
一个简单计数器的源代码
Oct 09 PHP
解决dede生成静态页和动态页转换的一些问题,及火车采集入库生成动态的办法
Mar 29 PHP
一个PHP缓存类代码(附详细说明)
Jun 09 PHP
PHP eval函数使用介绍
Dec 08 PHP
codeigniter框架批量插入数据
Jan 09 PHP
回帖脱衣服的图片实现代码
Feb 15 PHP
ThinkPHP实现多数据库连接的解决方法
Jul 01 PHP
php实现Linux服务器木马排查及加固功能
Dec 29 PHP
PHP简单获取及判断提交来源的方法
Apr 22 PHP
PHP针对伪静态的注入总结【附asp与Python相关代码】
Aug 01 PHP
通过PHP设置BugFree获取邮箱通知
Apr 25 PHP
laravel框架中间件简单使用方法示例
Jan 25 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中的全局变量
2016/06/17 PHP
php实现往pdf中加数字签名操作示例【附源码下载】
2018/08/07 PHP
PHP发送邮件确认验证注册功能示例【修改别人邮件类】
2019/11/09 PHP
laravel7学习之无限级分类的最新实现方法
2020/09/30 PHP
javascript判断单选框或复选框是否选中方法集锦
2007/04/04 Javascript
jQuery-onload让第一次页面加载时图片是淡入方式显示
2012/05/23 Javascript
使用jquery动态加载javascript以减少服务器压力
2012/10/29 Javascript
Jquery中map函数的用法
2016/06/03 Javascript
AngularJS入门教程之Select(选择框)详解
2016/07/27 Javascript
详解js中Number()、parseInt()和parseFloat()的区别
2016/12/20 Javascript
jQuery基于ajax方式实现用户名存在性检查功能示例
2017/02/10 Javascript
使用D3.js制作图表详解
2017/08/13 Javascript
Nodejs中使用phantom将html转为pdf或图片格式的方法
2017/09/18 NodeJs
vue-router 源码实现前端路由的两种方式
2018/07/02 Javascript
jquery实现下载图片功能
2019/07/18 jQuery
在react-antd中弹出层form内容传递给父组件的操作
2020/10/24 Javascript
python利用hook技术破解https的实例代码
2013/03/25 Python
Python编程中用close()方法关闭文件的教程
2015/05/24 Python
12步教你理解Python装饰器
2016/02/25 Python
Python实现将数据框数据写入mongodb及mysql数据库的方法
2018/04/02 Python
python实现tail实时查看服务器日志示例
2019/12/24 Python
Python爬虫解析网页的4种方式实例及原理解析
2019/12/30 Python
Python图像处理库PIL的ImageDraw模块介绍详解
2020/02/26 Python
浅析Django 接收所有文件,前端展示文件(包括视频,文件,图片)ajax请求
2020/03/09 Python
python matplotlib库的基本使用
2020/09/23 Python
HTML最新标准HTML5总结(必看)
2016/06/13 HTML / CSS
以特惠价提供在线奢侈品购物:FRMODA.com
2018/01/25 全球购物
JBL加拿大官方商店:扬声器、耳机等
2020/10/23 全球购物
C#中有没有运算符重载?能否使用指针?
2014/05/05 面试题
农行实习自我鉴定
2013/09/22 职场文书
卫校毕业生自我鉴定
2014/09/28 职场文书
司法工作人员群众路线对照检查材料思想汇报
2014/09/30 职场文书
工作表现证明
2015/06/15 职场文书
《平移和旋转》教学反思
2016/02/19 职场文书
python 如何用terminal输入参数
2021/05/25 Python
Win11如何修改dns?Win11修改dns图文教程
2022/01/18 数码科技