Home > Q&A > body text
一个数组:
$test = array(1 => 0, 99 => 0, 87 => 0, 45 => 0, 67 => 0, 11 => 1, 2 => 0);
使用 asort($test) 排序,结果是:
{"67":0,"2":0,"1":0,"45":0,"87":0,"99":0,"11":1}
虽然值为 1 的键排在了最后,但是同样值为 0 的键,顺序跟之前不同了。
这里如何保证值为 0 的顺序不变?
欧阳克2016-11-16 14:44:19
PHP的asort和sort,底层是用快排实现的。无法保证同等大小的元素的顺序。
要保证值为0的顺序不变?只能自己实现一个数组排序。