php数组函数分析--array_column
array_column
官方地址:array_column
- array_column 只能在 PHP版本5.5以上的运行,5.3是不支持这个函数的。如果5.3使用会报:
Fatal error: Call to undefined function array_column()
- array_column如何使用?
- 举下面几个例子:
- 二维数组中提取出某一列,成为一维数组。
$a = array(array('discussion_id' => 123456),array('discussion_id' => 27495220), array('discussion_id' => 27495087));
$a = array_column($a,'discussion_id');
var_dump($a);
运行结果:
array(3) {
[0]=>
int(123456)
[1]=>
int(27495220)
[2]=>
int(27495087)
}
- 二维数组中,某一列作为下标,某一列作为值,成为一维数组。
$b = array(array('id'=>345,'name'=>'小王','address'=>'beijing'),array('id'=>298,'name'=>'小张','address'=>'shanghai'),array('id'=>390,'name'=>'小明','address'=>'guangzhou'));
$b = array_column($b,'name','id');
var_dump($b);
运行结果:
array(3) {
[345]=>
string(6) "小王"
[298]=>
string(6) "小张"
[390]=>
string(6) "小明"
}
如果web运行环境的PHP版本小于5.5,怎么提取二维数组的某一列作为一位数组呢?
- 看下面这个例子,根据数组中的下标重新生成数组:
public static function getNewArrByElement($list, $element) {
if(!isset($list) || !is_array($list) || empty($list)) {
return array();
}
if(!isset($element) || empty($element)) {
return array();
}
$j = 0;
$result = array();
for($i = 0; $i < count($list); $i++) {
if(isset($list [$i] [$element])) {
$result [$j] = $list [$i] [$element];
$j++;
} else {
return array();
}
}
return $result;
}
$a = array(array('discussion_id' => 123456),array('discussion_id' => 27495220), array('discussion_id' => 27495087));
$a = CommonUtil::getNewArrByElement($a,'discussion_id');
运行结果:
array(3) {
[0]=>
int(123456)
[1]=>
int(27495220)
[2]=>
int(27495087)
}
php数组函数分析--array_column的更多相关文章
- split(),preg_split()与explode()函数分析与介
split(),preg_split()与explode()函数分析与介 发布时间:2013-06-01 18:32:45 来源:尔玉毕业设计 评论:0 点击:965 split()函数可以实 ...
- Linux-0.11内核源代码分析系列:内存管理get_free_page()函数分析
Linux-0.11内存管理模块是源码中比較难以理解的部分,如今把笔者个人的理解发表 先发Linux-0.11内核内存管理get_free_page()函数分析 有时间再写其它函数或者文件的:) /* ...
- PHP之数组函数
php数组中的预定义变量 预定义常量 CASE_LOWER (integer) CASE_LOWER 用在array_change_key_case()中将数组的键名转换为小写字母.这也是array_ ...
- PHP强大的数组函数
<?php/** * Created by PhpStorm. * User: 63448 * Date: 2018/5/6 * Time: 21:56 */echo "<h3& ...
- php数组函数(分类基本数组函数,栈函数,队列)
php数组函数(分类基本数组函数,栈函数,队列函数) 一.总结 1.常用数组函数 函数 描述 array() 创建数组. array_combine() 通过合并两个数组来创建一个新数组. array ...
- 辛星解读之php中的重点函数第一节之数组函数
这里我已经写好它的pdf版本号了,比本博客更加适合阅读.首先说一下它在百度网盘的下载地址把:百度网盘下载 ,假设左边连接跪了.能够在浏览器中输入:http://pan.baidu.com/s/1qW5 ...
- PHP 数组函数大全
PHP数组函数是核心的一部分.无需安装即可使用这些函数 函数名称 描述 array_change_key_case 将数组中的所有键名修改为全大写或小写 array_chunk 将一个数组分割成多个 ...
- 向php数组函数array_colum()传入奇怪的数组
<?php // 向php数组函数array_colum()传入奇怪的数组 // array_colum()函数 返回行列数组的其中一列,可以用其他列的键充当键 $arr = [ [ 1, 2, ...
- 【风马一族_php】数组函数
原文来自:http://www.cnblogs.com/sows/p/6045699.html (博客园的)风马一族 侵犯版本,后果自负 2016-11-09 15:56:26 数组 函数 php- ...
随机推荐
- OpenStack云计算快速入门之三:OpenStack镜像管理
原文:http://blog.chinaunix.net/uid-22414998-id-3272059.html 第三部分 OpenStack镜像管理 一.简介 很多源都有为OpenStack已经编 ...
- [原创]纯CSS3打造的3D翻页翻转特效
刚接触CSS3动画,心血来潮实现了一个心目中自己设计的翻页效果的3D动画,页面纯CSS3,目前只能在Chrome中玩,理论上可以支持Safari. 1. 新建HTML,代码如下(数据和翻页后的数据都是 ...
- sql server全文索引使用中的小坑
一.业务场景 我们在实际生产环境中遇到了这样一种需求,即需要检索一个父子关系的子树数据 估计大家也遇到过类似的场景,最典型的就是省市数据,其中path字段是按层级关系生成的行政区路径: 如果我们已知某 ...
- spring项目部署到resin4中的无法注入问题
碰到个奇葩事啊,一个spring的项目拿到客户现场部署到resin4中,启动后各种报无法注入bean,找不到bean的问题.出现大量下图的错误: nested exception is org.spr ...
- -bash: /bin/rm: Argument list too long
使用rm * -f删除缓存目录文件时,报如下错误 -bash: /bin/rm: Argument list too long 提示文件数目太多. 解决的办法是使用如下命令: ls | xargs - ...
- Libevent初探
Libevent 是一个用C语言编写的.轻量级的开源高性能网络库,主要有以下几个亮点:事件驱动( event-driven),高性能;轻量级,专注于网络,不如 ACE 那么臃肿庞大:源代码相当精炼.易 ...
- P1774 最接近神的人_NOI导刊2010[树状数组 逆序对 离散化]
题目描述 破解了符文之语,小FF开启了通往地下的道路.当他走到最底层时,发现正前方有一扇巨石门,门上雕刻着一幅古代人进行某种活动的图案.而石门上方用古代文写着“神的殿堂”.小FF猜想里面应该就有王室的 ...
- jboss配置数据源
配置的是mysql的数据源 找到jboss-.GA\docs\examples\jca\mysql-ds.xml 复制一份到jboss-.GA\server\default\deploy目录下 然后修 ...
- 【C#】【Thread】BackgroundWorker的使用
BackgroundWorker 可以用于启动后台线程. 主要的事件及参数: 1.DoWork --当执行BackgroundWorker.RunWorkerAsync方法时会触发该事件,并且传递Do ...
- TEXTAREA自适应文字行数的多少
<textarea rows=1 name=s1 cols=27 onpropertychange="this.style.posHeight=this.scrollHeight&qu ...