array_column() 返回输入数组中某个单一列的值。

$res = array_column([['a'=>11,'b'=>22]],'b');
$res2 = array_column([[33,44,55]],1,0);
print_r($res);
print_r($res2);

结果:
Array
(
    [0] => 22
)
Array
(
    [33] => 44
)

二维数组转一维数组:
	    //Array
        //(
        //    [0] => Array
        //        (
        //            [0] => member_id
        //            [1] => =
        //            [2] => 222030
        //        )
        //
        //    [1] => Array
        //        (
        //            [0] => is_default
        //            [1] => =
        //            [2] => 1
        //        )
        //
        //)

$res3 = array_column([['member_id','=',222030],['is_default','=',1]],2,0);
print_r($res3);
Array
(
    [member_id] => 222030
    [is_default] => 1
)

从记录集中取出 last_name 列:

<?php
// 表示由数据库返回的可能记录集的数组
$a = array(
  array(
    'id' => 5698,
    'first_name' => 'Bill',
    'last_name' => 'Gates',
  ),
  array(
    'id' => 4767,
    'first_name' => 'Steve',
    'last_name' => 'Jobs',
  ),
  array(
    'id' => 3809,
    'first_name' => 'Mark',
    'last_name' => 'Zuckerberg',
  )
);

$last_names = array_column($a, 'last_name');
print_r($last_names);
?>

输出:

Array
(
  [0] => Gates
  [1] => Jobs
  [2] => Zuckerberg
)

定义和用法

array_column() 返回输入数组中某个单一列的值。

语法

array_column(array,column_key,index_key);
参数描述
array必需。规定要使用的多维数组(记录集)。
column_key

必需。需要返回值的列。

可以是索引数组的列的整数索引,或者是关联数组的列的字符串键值。

该参数也可以是 NULL,此时将返回整个数组(配合 index_key 参数来重置数组键的时候,非常有用)。

index_key可选。用作返回数组的索引/键的列。

技术细节

返回值:返回数组,此数组的值为输入数组中某个单一列的值。
PHP 版本:5.5+

更多实例

例子 1

从记录集中取出 last_name 列,用相应的 "id" 列作为键值:

<?php
// 表示由数据库返回的可能记录集的数组
$a = array(
  array(
    'id' => 5698,
    'first_name' => 'Bill',
    'last_name' => 'Gates',
  ),
  array(
    'id' => 4767,
    'first_name' => 'Steve',
    'last_name' => 'Jobs',
  )
  array(
    'id' => 3809,
    'first_name' => 'Mark',
    'last_name' => 'Zuckerberg',
  )
);

$last_names = array_column($a, 'last_name', 'id');
print_r($last_names);
?>

输出:

Array
(
  [5698] => Gates
  [4767] => Jobs
  [3809] => Zuckerberg
)
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值