您所在的位置:首页 / 知识分享

php array_column 常见用法

2023.03.24

290

ytj

php array_column 常见用法

$arr = [
    ['id' => "5", 'name' => 'D', 'age' => 18],
    ['id' => "1", 'name' => 'A', 'age' => 19],
    ['id' => "2", 'name' => 'B', 'age' => 20],
    ['id' => "3", 'name' => 'C', 'age' => 18],
];

用法1:将数组的id抽取出来,组成一个新的一维数组


$newArr = array_column($arr,'id');
// 输出
Array
(
    [0] => 5
    [1] => 1
    [2] => 2
    [3] => 3
)

用法2:将id作为key,name作为value,组成一个新的一维数组



$newArr = array_column($arr,'name','id');
// 输出
Array
(
    [5] => D
    [1] => A
    [2] => B
    [3] => C
)


用法3:将id作为二维树数组的key,替换掉原来的默认有序key

$newArr = array_column($arr, null,'id');
// 输出
Array
(
    [5] => Array
        (
            [id] => 5
            [name] => D
            [age] => 18
        )

    [1] => Array
        (
            [id] => 1
            [name] => A
            [age] => 19
        )

    [2] => Array
        (
            [id] => 2
            [name] => B
            [age] => 20
        )

    [3] => Array
        (
            [id] => 3
            [name] => C
            [age] => 18
        )

)

用法4:将二维数组的id值的大小作为排序条件进行排序:


$fields = array_column($arr, 'id');
array_multisort($fields, SORT_ASC, $arr);
// 输出:
Array
(
    [0] => Array
        (
            [id] => 1
            [name] => A
            [age] => 19
        )

    [1] => Array
        (
            [id] => 2
            [name] => B
            [age] => 20
        )

    [2] => Array
        (
            [id] => 3
            [name] => C
            [age] => 18
        )

    [3] => Array
        (
            [id] => 5
            [name] => D
            [age] => 18
        )

)

相关新闻

301的意义

2015.10.22

2276

微信与支付宝小程序对比分析,看完你会选择谁?

2021.03.08

2099

小程序作为一款轻应用,具有无需安装、无须卸载、触手可及、用完即走的优势,让腾讯、阿里两大巨头争相发力抢占这一块移动互联网新流量市场。 而你知道支付宝小程序与微信小程序相比有何本质的不同吗?今天小助手就分别从它们的发展、页面、入口、属性4个方面来给你进行对比分析一下!

上传图片的时候,ios手机的图片会旋转90°

2019.01.17

3363

在html5中利用canvas对上传图片压缩的时候,ios手机竖着拍照时,图片会旋转90°,其他情况正常。