📅  最后修改于: 2023-12-03 15:03:45.106000             🧑  作者: Mango
在PHP中的array_column函数用于从一个多维数组中取出某个键对应的值,返回值为一维数组。
array_column($input, $column_key, $index_key = null);
$input:可以是一个关联数组,数字索引数组或者是一个数组对象。
$column_key:要返回值的键名。可以是字符串,也可以是整数类型的键名。
$index_key:用作返回数组的键名的列。可以是字符串类型的键名,也可以是整数类型的键名。
返回一个一维数组,数组的值为输入数组中的某个键名所对应的值。如果指定了index_key参数,则返回的数组的键名为input中$index_key列的值。如果没有指定index_key参数,则返回的数组的键名为从0开始的数字索引。
//定义一个数组
$records = array(
array(
'id' => 1,
'name' => '张三',
'age' => 18,
'sex' => '男'
),
array(
'id' => 2,
'name' => '李四',
'age' => 20,
'sex' => '女'
),
array(
'id' => 3,
'name' => '王五',
'age' => 22,
'sex' => '男'
),
);
//返回数组中id列的值
$result = array_column($records, 'id');
print_r($result);
//输出:Array ( [0] => 1 [1] => 2 [2] => 3 )
//返回数组中name列和age列的值
$result = array_column($records, array('name', 'age'));
print_r($result);
/*输出:
Array
(
[0] => Array
(
[name] => 张三
[age] => 18
)
[1] => Array
(
[name] => 李四
[age] => 20
)
[2] => Array
(
[name] => 王五
[age] => 22
)
)*/
//按照id列作为返回数组的键名
$result = array_column($records, 'name', 'id');
print_r($result);
//输出:Array ( [1] => 张三 [2] => 李四 [3] => 王五 )
array_column函数在处理多维数组时非常方便,可以轻松地取出数组中与指定键名对应的数据。同时也能够轻松地按照指定的键名作为返回数组的键名。