1:sort与rsort
sort为按照值来进行升序排序
rsort为按照值来进行降序排序
这两个函数会忽略掉键,将函数变成一个数字索引数组
*这两个函数最好只用于数字的排序,如果用于字符串的排序会产生不同的结果
<?php
$array = array("file1.text","file22.text","file11.text","file2.text");
sort($array);
echo "<pre>";
print_r($array);
echo "</pre>";
/*
Array
(
[0] => file1.text
[1] => file11.text
[2] => file2.text
[3] => file22.text
)//得出的结果与人认知的不同
*/
?>
2:natsort//自然排序法排序
使用此函数进行排序,排序出来的顺序就与人的认知的相同
<?php
$array = array("file1.text","file22.text","file11.text","file2.text");
natsort($array);
echo "<pre>";
print_r($array);
echo "</pre>";
/*
Array
(
[0] => file1.text
[3] => file2.text
[2] => file11.text
[1] => file22.text
)*/
?>
3:ksort与krsort
ksort为按照键来进行升序排序
krsort为按照键来进行降序排序
4:asort与arsort
asort为按照值来进行升序排序
arsort为按照值来进行降序排序
这两个函数不会忽略掉键,将函数变成一个数字索引数组
5:usort($array,func)
根据用户自定义函数来进行对数组的排序,与as3中的差不多
<?php
$array = array("100","1000","1","10000","200");
usort($array,'sortLen');
function sortLen($a,$b)
{
if(strlen($a) == strlen($b))
{
return 0;//0代表位置不变
}else
{
return strlen($a) > strlen($b) ? -1:1;//-1代表元素往前移,1代表元素往后移
}
}
echo "<pre>";
print_r($array);
echo "</pre>";
/*
Array
(
[0] => 10000
[1] => 1000
[2] => 200
[3] => 100
[4] => 1
)*/
?>