Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/235.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
比较PHP中的另一个数组对数组进行排序_Php_Arrays - Fatal编程技术网

比较PHP中的另一个数组对数组进行排序

比较PHP中的另一个数组对数组进行排序,php,arrays,Php,Arrays,我有两个数组,其中一个用于排序,另一个用于排序实际值。如何通过比较数组对数组进行排序?任何想法都会很有帮助。多谢各位 订单数组: Array( [0] => Array ( [code] => subscription_bundles [id_sequency] => 1 ) [1] => Array ( [code] => pre_order [id_sequency] =&

我有两个数组,其中一个用于排序,另一个用于排序实际值。如何通过比较数组对数组进行排序?任何想法都会很有帮助。多谢各位

订单数组:

Array(
[0] => Array
    (
        [code] => subscription_bundles
        [id_sequency] => 1
    )

[1] => Array
    (
        [code] => pre_order
        [id_sequency] => 2
    )

[2] => Array
    (
        [code] => voucher
        [id_sequency] => 3
    )

[3] => Array
    (
        [code] => ppv
        [id_sequency] => 4
    )

[4] => Array
    (
        [code] => ppv_bundle
        [id_sequency] => 5
    )
)
要对数组进行排序,请执行以下操作:

Array(
[monetization] => Array
    (
        [ppv] => Pay Per View
        [ppv_bundle] => Pay-Per-View Bundle
        [subscription_bundles] => Subscription
        [voucher] => Voucher
    )

您可以将
uksort
array\u combine
结合使用,从订单数组创建键订单映射

// create order mapping
$map = array_combine(
    array_column($order, 'code'),
    array_column($order, 'id_sequency')
);

// sort the data
uksort($data, function ($a, $b) use ($map) {
    return $map[$a] - $map[$b];
});

你错过了预订吗?@vivek\u 23我没有错过。sort_数组中的数据为dynamic@SougataBose第一个数组(代码)=第二个数组['monetization][key]@SougataBose-这个问题与你的链接问题不完全相同..不完全相同,但逻辑几乎相同。尽管重新提出了这个问题。谢谢。我不明白你做了什么,它不起作用。仅供参考第一个数组(代码)=第二个数组['monetization][key]来吧-展示一些努力。。将
$data
替换为
$second\u array['monetization']
显然,我做到了。但我还是不知道