array_multisort 第二个数组没有正确排序
示例错误代码
$array1 = [5, 3, 1, 5, 7];
$array2 = ['ab','ac','ad','aa','ae'];
array_multisort($array1,$array2);
var_dump($array1,$array2);
我们希望array2输出结果顺序是 ad, ac, ab, aa, ae
但实际输出结果如下:
//$array1
array(5) {
[0]=> int(1)
[1]=> int(3)
[2]=> int(5)
[3]=> int(5)
[4]=> int(7)
}
//$array2
array(5) {
[0]=> string(2) "ad"
[1]=> string(2) "ac"
[2]=> string(2) "aa"
[3]=> string(2) "ab"
[4]=> string(2) "ae"
}
使用array_multisort()
函数时需要注意如果第一个数组中存在相同的值,那对应的第二个数组的值会默认按顺序排序。
本作品采用《CC 协议》,转载必须注明作者和本文链接