📜  php中的array_column(1)

📅  最后修改于: 2023-12-03 15:03:45.106000             🧑  作者: Mango

PHP中的array_column

在PHP中的array_column函数用于从一个多维数组中取出某个键对应的值,返回值为一维数组。

语法
array_column($input, $column_key, $index_key = null);
  • $input:必须。输入的多维数组。
  • $column_key:必须。要返回值的键名。
  • $index_key:可选。用作返回数组的键名的列。
参数说明

$input:可以是一个关联数组,数字索引数组或者是一个数组对象。

$column_key:要返回值的键名。可以是字符串,也可以是整数类型的键名。

$index_key:用作返回数组的键名的列。可以是字符串类型的键名,也可以是整数类型的键名。

返回值

返回一个一维数组,数组的值为输入数组中的某个键名所对应的值。如果指定了index_key参数,则返回的数组的键名为input中$index_key列的值。如果没有指定index_key参数,则返回的数组的键名为从0开始的数字索引。

示例
//定义一个数组
$records = array(
    array(
        'id' => 1,
        'name' => '张三',
        'age' => 18,
        'sex' => '男'
    ),
    array(
        'id' => 2,
        'name' => '李四',
        'age' => 20,
        'sex' => '女'
    ),
    array(
        'id' => 3,
        'name' => '王五',
        'age' => 22,
        'sex' => '男'
    ),
);

//返回数组中id列的值
$result = array_column($records, 'id');
print_r($result);
//输出:Array ( [0] => 1 [1] => 2 [2] => 3 )

//返回数组中name列和age列的值
$result = array_column($records, array('name', 'age'));
print_r($result);
/*输出:
Array
(
    [0] => Array
        (
            [name] => 张三
            [age] => 18
        )

    [1] => Array
        (
            [name] => 李四
            [age] => 20
        )

    [2] => Array
        (
            [name] => 王五
            [age] => 22
        )

)*/

//按照id列作为返回数组的键名
$result = array_column($records, 'name', 'id');
print_r($result);
//输出:Array ( [1] => 张三 [2] => 李四 [3] => 王五 )

总结

array_column函数在处理多维数组时非常方便,可以轻松地取出数组中与指定键名对应的数据。同时也能够轻松地按照指定的键名作为返回数组的键名。