0
我有两个阵列在PHP,$array1
和$array2
,我基于$array1
为了排名两个阵列基于花药阵列上
$array1 =array(2,10,4,5,2,1);
$array2 =array(A,B,C,D,E,F);
$ordered_values = $array1;
array_multisort($array1, $array2);
foreach ($array1 as $key => $value) {
foreach ($ordered_values as $ordered_key => $ordered_value) {
if ($value === $ordered_value) {
$key = $ordered_key;
break;
}
}
echo $value . '- Rank: ' . ((int) $key + 1) . '<br/>';
}
排名$array2
上面给出这导致
1- Rank: 6
2- Rank: 1
2- Rank: 1
4- Rank: 3
5- Rank: 4
10-Rank: 2
然而这是我期待的
B- Rank: 1
D- Rank: 2
C- Rank: 3
E- Rank: 4
A- Rank: 4
F- Rank: 6
任何帮助表示赞赏。
感谢洙多为你的,它的实际工作 – MessiahCoder
@MessiahCoder真高兴这有助于 – Ghost
我问这在MySQL中也有类似的阵列数据的问题,我想找到从MySQL排名使用FIND_IN_SET功能或任何其他更好的功能,请看看这个问题,如果你可以帮助http://stackoverflow.com/q/39730507/6855079 – MessiahCoder