我的数组的值以单个数字开头,然后增加到数千个。
我想对$ id进行排序,但结果如下:
0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15
....等
不是
0,1,10,11,12,13,14,15,2,3,4,5,6,7,8,9
....等
如果不调整数组中的值,是否可以这样做?
谢谢:)
答案 0 :(得分:5)
我认为
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
)
答案 1 :(得分:0)
试试:
sort($myarr, SORT_STRING);