PHP array_column() 函数


实例

从记录集中取出 last_name 列:

  1. <?php
    // 可能从数据库中返回数组
    $a = array(
      array(
        'id' => 5698,
        'first_name' => 'Peter',
        'last_name' => 'Griffin',
      ),
      array(
        'id' => 4767,
        'first_name' => 'Ben',
        'last_name' => 'Smith',
      ),
      array(
        'id' => 3809,
        'first_name' => 'Joe',
        'last_name' => 'Doe',
      )
    );

    $last_names = array_column($a, 'last_name');
    print_r($last_names);
    ?>

输出:

  1. Array
    (
      [0] => Griffin
      [1] => Smith
      [2] => Doe
    )

定义和用法

array_column() 返回输入数组中某个单一列的值。

语法

  1. array_column(array,column_key,index_key);

参数 描述
array 必需。指定要使用的多维数组(记录集)。
column_key 必需。需要返回值的列。可以是索引数组的列的整数索引,或者是关联数组的列的字符串键值。该参数也可以是 NULL,此时将返回整个数组(配合index_key 参数来重置数组键的时候,非常管用)。
index_key 可选。作为返回数组的索引/键的列。

技术细节

返回值: 返回一个数组,数组的值为输入数组中某个单一列的值。
PHP 版本: 5.5+

更多实例

实例 1

从记录集中取出 last_name 列,用相应的 "id" 列作为键值:

  1. <?php
    // 可能从数据库中返回数组
    $a = array(
      array(
        'id' => 5698,
        'first_name' => 'Peter',
        'last_name' => 'Griffin',
      ),
      array(
        'id' => 4767,
        'first_name' => 'Ben',
        'last_name' => 'Smith',
      ),
      array(
        'id' => 3809,
        'first_name' => 'Joe',
        'last_name' => 'Doe',
      )
    );

    $last_names = array_column($a, 'last_name', 'id');
    print_r($last_names);
    ?>

输出:

  1. Array
    (
      [5698] => Griffin
      [4767] => Smith
      [3809] => Doe
    )