请使用2个数组查看以下代码。我使用multisort函数和sort标志进行升序,然后显示数字。正如你在输出中看到的那样,数组2应该是100,当它应该是最后一个时。请解释导致此问题的原因以及如何正确排序。谢谢。
<?php
$array1 = array(1,7,10,6);
$array2 = array(100,20,25,10);
array_multisort($array1, SORT_ASC, SORT_NUMERIC, $array2);
print_r($array1);
echo "<br>";
print_r($array2);
?>
output:
Array ( [0] => 1 [1] => 6 [2] => 7 [3] => 10 )
Array ( [0] => 100 [1] => 10 [2] => 20 [3] => 25 )
答案 0 :(得分:2)
啊,是的,对于第一次理解,array_multisort有点棘手。
基本上排序是词典编纂,这是一个奇特的词,意思是第一个数组被排序,第二个数组元素按照第一个数组排序。
查看你的第一个(输出)数组并查看顺序并将其映射到最初的第二个数组,你会看到发生了什么。
所以第二个数组就是第1,第4,第2和第3个元素。
如果您只想对多个数组进行简单排序,那么只需逐个或循环执行即可。