array column php版本,让array_column()函数兼容低版本PHP

array_column()是一个非常有用的php数据函数,主要用于取得二维数组的某一列的值的集合然后组成一个新的一位数组,不过该函数仅支持php 5.5以上的版本,因此这里给出一个对于低于5.5版本的实现方式。

if(!function_exists('array_column')){

function array_column($arr,$key){

return array_map(function($val) use ($key){

return $val[$key];

},$arr);

}

}

或者:

if(!function_exists('array_column')){

function array_column($input,$column_key,$index_key=null){

$arr=array_map(function($d) use ($column_key,$index_key){

if(!isset($d[$column_key])){

return null;

}

if($index_key!==null){

return array($d[$index_key]=>$d[$column_key]);

}

return $d[$column_key];

},$input);

if($index_key!==null){

$tmp=array();

foreach ($arr as $ar){

$tmp[key($ar)]=current($ar);

}

$arr=$tmp;

}

return $arr;

}

}

示例:

$records = array(

array(

'id' => 2135,

'first_name' => 'John',

'last_name' => 'Doe',

),

array(

'id' => 3245,

'first_name' => 'Sally',

'last_name' => 'Smith',

),

array(

'id' => 5342,

'first_name' => 'Jane',

'last_name' => 'Jones',

),

array(

'id' => 5623,

'first_name' => 'Peter',

'last_name' => 'Doe',

)

);

$first_names = array_column($records, 'first_name');

print_r($first_names);

以上例程会输出:

Array

(

[0] => John

[1] => Sally

[2] => Jane

[3] => Peter

)

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值