实用函数,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);
    }
}
posted @ 2020-05-29 09:36  TBHacker  阅读(803)  评论(0编辑  收藏  举报