PHP中array_column()的用法

现在有这么一个场景,现有以下数组,我想要用id作为新数组的一个键值,name 作为value 拼成一个新的数组,这个时候我相信好多新同学首先会想到的是以下解决办法

现在有这么一个场景,现有以下数组

$arr = [
    ['id' => 11, 'name' => 'aa'],
    ['id' => 22, 'name' => 'bb',],
    ['id' => 44, 'name' => 'cc'],
    ['id' => 33, 'name' => 'dd']
];

我想要用id作为新数组的一个键值,name 作为value 拼成一个新的数组,这个时候我相信好多新同学首先会想到的是以下解决办法

$array = [];
foreach($arr as $vo){
 $array[$vo['id']] = $vo['name'];
}
dump($array);

这样虽然说也能达到效果,但是相对来说比较繁琐,其实php 有一个自带的函数array_column,完全可以一行搞定

// 示例1:
print_r(array_column($arr, 'name')); 
// 运行结果:
Array
(
    [0] => aa
    [1] => bb
    [2] => cc
    [3] => dd
)
 
// 示例2:
print_r(array_column($arr,'name','id')); 
// 运行结果:
(
    [11] => aa
    [22] => bb
    [44] => cc
    [33] => dd
)
 
// 示例3:
print_r(array_column($arr, null, 'name')); 
// 运行结果:
Array
(
    [aa] => Array
        (
            [id] => 11
            [name] => aa
        )
 
    [bb] => Array
        (
            [id] => 22
            [name] => bb
        )
 
    [cc] => Array
        (
            [id] => 44
            [name] => cc
        )
 
    [dd] => Array
        (
            [id] => 33
            [name] => dd
        )
 
)

以上这篇php中array_column()的用法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持芦苇派。

原创文章,作者:ECHO陈文,如若转载,请注明出处:https://www.luweipai.cn/php/1639272370/

  • 0