实用函数,array_column。从二维数组中获取想要的一维数组。获取数组中的一列。
案例1:
<?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
)
案例2:
<?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
)
去重处理
/**
* 获取二维数组中的一组
*/
public static function getArrayColumn($arr,$column,$is_uniq = 1) {
if ($is_uniq) {
return array_values(array_filter(array_column($arr, $column)));
} else {
return array_column($arr, $column);
}
}