如何按任意顺序按键对数组进行排序 php 5.6

时间:2021-07-08 13:09:10

标签: php arrays sorting

环境: PHP:5.6

我在 API 上获取了数组数据,我需要对其进行格式化以便生成 csv 文件

$datas = [
    [
        0 => [
            'age' => '18',
            'name' => 'Na',
        ],
        'info' => [
            'id' => '9999',
            'phone' => '012345',
        ]
    ],
    [
        0 => [
            'age' => '20',
            'name' => 'Bi',
        ],
        'info' => [
            'id' => '8888',
            'phone' => '099888',
        ]
    ]
];

数组$header = ['id','name','age','phone'];

我有一个代码合并数组

$newResults = array_map(function ($result) use($header) {
            $sub = array();
            $sub[] = call_user_func_array('array_merge', $result);
            return $sub;
}, $datas);

$newResults 的结果:

Array
(
    [0] => Array
        (
            [0] => Array
                (
                    [age] => 18
                    [name] => Na
                    [id] => 9999
                    [phone] => 012345
                )

        )

    [1] => Array
        (
            [0] => Array
                (
                    [age] => 20
                    [name] => Bi
                    [id] => 8888
                    [phone] => 099888
                )

        )

)

但是这个结果不是想要的结果,我想按照$header的正确顺序对数组$sub进行排序 我想要的结果:

Array
(
    [0] => Array
        (
            [0] => Array
                (
                    [id] => 9999
                    [name] => Na
                    [age] => 18
                    [phone] => 012345
                )

        )

    [1] => Array
        (
            [0] => Array
                (
                    [id] => 8888
                    [name] => Bi
                    [age] => 20
                    [phone] => 099888
                )

        )

)

我尝试了某种方式,但没有奏效 谢谢大家!

0 个答案:

没有答案
相关问题