编辑 :
我假设如果它们是整数,则不能在不更改键的情况下对其重新排序(在此示例中很重要)。但是,如果它们是字符串,我可以对其重新排序,因为不应将索引解释为具有任何特殊含义。无论如何,请查看我的问题更新以了解我的操作方式(我走了另一条路)。
实际上,它们不必按数字顺序…
array(208=>'a', 0=> 'b', 99=>'c');
如果您手动分配它们,则完全有效。尽管我同意整数键可能会被某人误解为具有顺序含义,但是您会认为如果它们以非数字顺序显示,则很明显它们不是。话虽如此,我认为既然您有在更新时更改代码的余地,那是更好的方法。
可能不是最有效的方法,但很容易做到:
$keys = array_keys($data);$values = array_values($data);$stringKeys = array_map('strval', $keys);$data = array_combine($stringKeys, $values);//sort your data


