定义和用法
array_column() 函数返回输入数组的单列的值,并由 column_key 标识。
(可选)您可以传递 index_key 以按输入数组的 index_key 列中的值为返回数组中的值编制索引。
语法
array array_column( array $input , mixed $column_key [, mixed $index_key = NULL ] )
参数
| 参数 | 描述 |
|---|---|
| input (mandatory) |
要从中提取值列的多维数组或对象数组。 |
| column_key (mandatory) |
要返回的值列。此值可以是要检索的列的整数键,也可以是关联数组或属性名称的字符串键名称。此值可以为 NULL 以返回完整的数组或对象 |
| index_key (optional) |
用作返回数组的索引/键的列。此值可以是列的整数键,也可以是字符串键名称。 |
返回值
该函数 array_column 返回一个值数组,该数组表示输入数组中的单个列。
PHP 版本
此函数最初是在 PHP 版本 5.5.0 中引入的。7.0.0 中引入了 input 参数为对象数组的功能
例子
尝试以下示例,从记录集中获取名字列 -
<?php
$records = array(
array(
'id' => 2135,
'first_name' => 'Zara',
'last_name' => 'Ali',
),
array(
'id' => 3245,
'first_name' => 'Nuha',
'last_name' => 'Mac',
),
array(
'id' => 5342,
'first_name' => 'Shifa',
'last_name' => 'Alam',
),
array(
'id' => 5623,
'first_name' => 'Riya',
'last_name' => 'Sweet',
)
);
$first_names = array_column($records, 'first_name');
print_r($first_names);
?>
这将产生以下结果 -
Array
(
[0] => Zara
[1] => Nuha
[2] => Shifa
[3] => Riya
)
(
[0] => Zara
[1] => Nuha
[2] => Shifa
[3] => Riya
)
例子
现在让我们再尝试一个示例,从记录集中获取名字列,但这次我们将使用 id -
<?php
$records = array(
array(
'id' => 2135,
'first_name' => 'Zara',
'last_name' => 'Ali',
),
array(
'id' => 3245,
'first_name' => 'Nuha',
'last_name' => 'Mac',
),
array(
'id' => 5342,
'first_name' => 'Shifa',
'last_name' => 'Alam',
),
array(
'id' => 5623,
'first_name' => 'Riya',
'last_name' => 'Sweet',
)
);
$first_names = array_column($records, 'first_name', 'id');
print_r($first_names);
?>
这将产生以下结果 -
Array
(
[2135] => Zara
[3245] => Nuha
[5342] => Shifa
[5623] => Riya
)
(
[2135] => Zara
[3245] => Nuha
[5342] => Shifa
[5623] => Riya
)

