PHP array_column() 函数
定义和用法
array_column() 函数从输入数组中返回单列的值,该列由 column_key 标识。
可选地,您可以通过输入数组的 index_key 列的值将返回的数组中的值索引。
语法
array array_column( array input , mixedcolumn_key [, mixed $index_key = NULL ] )
参数
序号 | 参数和描述 |
---|---|
1 | $input(必填) 一个多维数组或一个从中提取一列值的对象数组。 |
2 | $column_key(必填) 要返回的值列。该值可以是要检索的列的整数键,也可以是关联数组或属性名称的字符串键名。该值可以为 NULL ,以返回完整的数组或对象。 |
3 | $index_key(可选) 用于返回数组的索引/键的列。该值可以是列的整数键,也可以是字符串键名。 |
返回值
函数 array_column 返回一个表示输入数组中单独列的值的数组。
PHP 版本
此函数首次引入于 PHP 版本 5.5.0。在 7.0.0 版本中引入了输入参数为对象数组的能力。
示例
试用下面的示例来获取记录集中姓氏的列 –
<?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
)
示例
现在让我们再尝试一个例子,从记录集中获取名字列,但这次我们将使用 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
)