gpt4 book ai didi

php - 如何根据另一个数组对数组进行重新排序?

转载 作者:行者123 更新时间:2023-12-03 23:02:04 25 4
gpt4 key购买 nike

例子:

$arr = array('willion','kevien','john','smith');

$orderedArr = array('anne','bold','hellen','john','kevien','polm','smith','willion');

我想根据 $orderdArr 订单求助于 $arr 订单。我该怎么做?

我期望的结果:

'john','kevien','smith','willion'

$orderedArr的顺序可能会改变,所以我希望$arr的顺序和$orderedArr一样。

我很抱歉简化了我的问题。我认为我的 $arr 更复杂,$arr 的结构是:我使用 print_r() 来显示数组。

array( [0] => array([id]=>1 [name]=>willion)
[1] => array([id]=>2 [name]=>kevien)
[2] => array([id]=>3 [name]=>join)
)

非常感谢!

最佳答案

你可以使用usort

$order = array_flip($orderedArr);
usort($arr, function ($a, $b) use($order) {
return $order[$a] - $order[$b];
});
print_r($arr);

输出

Array
(
[0] => john
[1] => kevien
[2] => smith
[3] => willion
)

See Live DEMO

关于php - 如何根据另一个数组对数组进行重新排序?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16957706/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com