我的第一个阵列:
normalArray
(
[0] => Business Class
[2] => Economy
[6] => First Class
)
我的排序数组:
sortArray
(
[0] => Economy
[1] => Business Class
[2] => First Class
)
我试图将此作为我的结果
resultsArray
(
[2] => Economy
[0] => Business Class
[6] => First Class
)
请注意,键和值需要遵循正确的顺序。所以我需要按数组对数组进行排序,同时保持键的值。
我四处寻找并查看了许多不同的例子。
由于
答案 0 :(得分:1)
示例:
<?php
$fruits = array("d" => "lemon", "a" => "orange", "b" => "banana", "c" => "apple");
asort($fruits);
--OR--
arsort($fruits);
foreach ($fruits as $key => $val) {
echo "$key = $val\n";
}
?>
以上示例将输出:
a = orange
d = lemon
b = banana
c = apple
有关更多排序功能属性,请查看此link。
这可能对你有所帮助。
答案 1 :(得分:0)
试试这个:
$map = array_flip($sortArray);
uasort($normalArray,function($a,$b) use ($map) {return $map[$a] < $map[$b] ? -1 : 1});
答案 2 :(得分:0)
我相信你要找的是asort。
答案 3 :(得分:0)
试试这个arsort()
示例:
normalArray
(
[0] => Economy
[2] => Business Class
[6] => First Class
)
以上示例将输出:
resultsArray
(
[2] => Business Class
[0] => Economy
[6] => First Class
)
答案 4 :(得分:0)