我的数组的值以个位数开始,然后增加到数千个。
我想按 $id 排序,但结果如下:
0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15
....ETC
不是
0,1,10,11,12,13,14,15,2,3,4,5,6,7,8,9
....ETC
如果不调整数组中的值,这可能吗?
谢谢 :)
我认为
natsort ( array &$array )
是解决方案。来自 php 手册:
<?php
$array1 = $array2 = array("img12.png", "img10.png", "img2.png", "img1.png");
asort($array1);
echo "Standard sorting\n";
print_r($array1);
natsort($array2);
echo "\nNatural order sorting\n";
print_r($array2);
?>
The above example will output:
Standard sorting
Array
(
[3] => img1.png
[1] => img10.png
[0] => img12.png
[2] => img2.png
)
Natural order sorting
Array
(
[3] => img1.png
[2] => img2.png
[1] => img10.png
[0] => img12.png
)
试试看:
sort($myarr, SORT_STRING);