array_column除了获取数组的指定值外还有一个重要的用途

将一个二维数组根据某值作为key重组新的数组,不用遍历数组方式简单易用。

参数描述
array必需。规定要使用的多维数组(记录集)。
column_key

必需。需要返回值的列。

可以是索引数组的列的整数索引,或者是关联数组的列的字符串键值。

该参数也可以是 NULL,此时将返回整个数组(配合 index_key 参数来重置数组键的时候,非常有用)。

index_key可选。用作返回数组的索引/键的列。


<?php
$arr = [
    [
        'a'=>1,
        'b'=>2
    ],
    [
        'a'=>11,
        'b'=>22
    ],
    [
        'a'=>111,
        'b'=>333
    ]
];

$arr1 = array_column($arr,null,'b');
print_r($arr1);
//结果如下

Array    
(    
[2] => Array    
(    
[a] => 1    
[b] => 2    
)    
[22] => Array    
(    
[a] => 11    
[b] => 22    
)    
[333] => Array    
(    
[a] => 111    
[b] => 333    
)    
)


评论/留言