array_column函数_函数

array_column函数是PHP中的一个内置函数,用于返回输入数组中指定的一列的值。这个函数接收三个参数:输入数组、键名或索引以及可选的输出类型。如果指定了可选的输出类型,那么结果数组将强制转换为该类型。

array_column()PHP 中的一个函数,用于返回数组中指定的一列,这个函数特别适用于操作二维数组,下面详细解释这个函数的用法:

array_column函数_函数插图1

语法

array array_column ( array $input , mixed $column_key [, mixed $index_key ] )

参数

$input : 必需,规定要返回其中一列的输入数组。

$column_key : 可选,需要返回的列的数字或字符串索引,可以是 null。

$index_key : 可选,用作返回数组的索引/键的列的数字或字符串索引,可以是 null。

返回值

返回包含有指定列的数组,如果索引键也指定了,那么结果数组将使用该索引/键作为其索引/键。

array_column函数_函数插图3

示例

假设我们有一个二维数组,如下:

$records = array(
    array(
        'id' => 2135,
        'first_name' => 'John',
        'last_name' => 'Doe',
    ),
    array(
        'id' => 3245,
        'first_name' => 'Sally',
        'last_name' => 'Smith',
    ),
    array(
        'id' => 5342,
        'first_name' => 'Jane',
        'last_name' => 'Jones',
    ),
    array(
        'id' => 5623,
        'first_name' => 'Peter',
        'last_name' => 'Doe',
    )
);

我们可以使用array_column() 函数来获取所有的first_name

$first_names = array_column($records, 'first_name');
print_r($first_names);

这将输出:

Array
(
    [0] => John
    [1] => Sally
    [2] => Jane
    [3] => Peter
)

如果我们还想用id 作为新数组的键,我们可以这样做:

$first_names = array_column($records, 'first_name', 'id');
print_r($first_names);

这将输出:

Array
(
    [2135] => John
    [3245] => Sally
    [5342] => Jane
    [5623] => Peter
)

array_column函数_函数插图5

array_column() 是一个在 PHP 中用于从数组中取出一列的函数,下面我将描述这个函数的用法,并以介绍的形式展示。

函数原型:

array array_column ( array $input , mixed $column_key [, mixed $index_key ] )

参数说明:

参数名 描述 是否必须 $input 一个多维数组,或者一个包含数组的数组(例如来自数据库查询的结果)。 是 $column_key 需要返回列的键名,可以是整数(表示数组索引),字符串(表示对象的属性),或者 null。 是 $index_key 用来作为返回数组的索引/键名的列的键名,可以是整数(表示数组索引),字符串(表示对象的属性),或者 null。 否

返回值:

返回一个包含指定列的数组。

例子:

$records = [
    ['id' => 2135, 'first_name' => 'John', 'last_name' => 'Doe'],
    ['id' => 3245, 'first_name' => 'Jane', 'last_name' => 'Doe'],
    ['id' => 5342, 'first_name' => 'Emil', 'last_name' => 'Zatopek']
];
$first_names = array_column($records, 'first_name');
$last_names_by_id = array_column($records, 'last_name', 'id');

在上面的例子中:

$first_names 将是['John', 'Jane', 'Emil']

$last_names_by_id 将是['2135' => 'Doe', '3245' => 'Doe', '5342' => 'Zatopek']

注意:array_column() 函数在 PHP 5.5.0 版本以上可用,如果你使用的是更早的版本,你需要自己实现这个功能或者使用 polyfill。

本文来源于互联网,如若侵权,请联系管理员删除,本文链接:https://www.9969.net/8628.html

至强防御至强防御
上一篇 2024年6月14日 17:30
下一篇 2024年6月14日 17:30

相关推荐