我偶然发现了一些让我困惑的东西。在我之前,如果你保存一个数组并且它是整数的键,那么数组会自动对它自己排序。阵列中的键排序
Array
(
[1] => one
[2] => two
)
相反,它出现这样的:
Array
(
[2] => two
[1] => one
)
也就是说,如果我添加的关键
2
,关键
1
之前,我虽然该阵列将由最低数量排序
操作:
$arr = array();
$arr[2] = 'two';
$arr[1] = 'one';
这看起来好像没什么,但有时我用foreach()
或STO在数组中指定它们并将它们排序为INSERT
-query,然后它们需要按正确的顺序(由于AUTO INCREMENT)。
因此问题:
在PHP中预期的排序结果是什么?
我有一个相当强大的内存,我已经通过输出#1排序了数组。这是否有所不同从PHP版本到PHP版本?
感谢您的回答!
你是如何得到这个数组的?即您使用了哪种阵列操作? – 2012-03-26 09:29:27
数组中的AFAIK项目按照将它们添加到数组中的顺序排列。您可以使用一些内置PHP函数按键对数组进行排序。 – 2012-03-26 09:29:59
'$ arr [2] ='blabla''只会将元素推到数组的末尾,因此,请使用'ksort'重新排序 – Val 2012-03-26 09:38:00