PHP array_column() 函数



定义和用法

array_column() 函数返回输入数组中由column_key标识的单个列的值。

可选地,您可以传递index_key,以使用输入数组的index_key列中的值对返回数组中的值进行索引。

语法

array array_column( array $input , mixed $column_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
)
php_function_reference.htm
广告