您的位置:首页 > 编程语言 > PHP开发

php 数组(array)排序

2017-02-04 19:30 302 查看
sort对数组进行排序

bool sort(array &$array[,int $sort_flags = SORT_REGULAR]);


当该函数运行结束时,数组单元将被从最低到最高重新排列。

sort_flags可选的第二个参数可以用一下值改变排序的行为:

SORT_REGULAR //正常比较单元(不改变类型)
SORT_NUMERIC //单元被作为数字进行比较
SORT_STRING  //单元被作为字符串进行比较
//根据当前的区域(locale)设置来把单元当作字符串比较,可以用setlocale()来改变
SORT_LOCALE_STRING
//和natsort()类似对每个单元以“自然的顺序”对字符串进行排序
SORT_NATURAL
//能够与SORT_STRING 或SORT_NATURAL合并(OR位运算),不区分大小写排序字符串
SORT_FLAG_CASE


相关例子

$numbers = array(24,19,3,16,56,8,171,9);
sort($numbers);
var_dump($numbers);
//输出array(8) {
[0]=>int(3)
[1]=>int(8)
[2]=>int(9)
[3]=>int(16)
[4]=>int(19)
[5]=>int(24)
[6]=>int(56)
[7]=>int(171)}

sort($numbers,SORT_STRING);
print_r($numbers);
//输出Array(
[0] => 16
[1] => 171
[2] => 19
[3] => 24
[4] => 3
[5] => 56
[6] => 8
[7] => 9)
//混合数组
$mixed = array(24,"dog","cat",19,3,56,8,171,"bruce","nemo");
sort($mixed);
print_r($mixed);
//输出Array(
[0] => bruce
[1] => cat
[2] => dog
[3] => nemo
[4] => 3
[5] => 8
[6] => 19
[7] => 24
[8] => 56
[9] => 171)

sort($mixed,SORT_REGULAR);
print_r($mixed);
//输出Array(
[0] => bruce
[1] => cat
[2] => dog
[3] => nemo
[4] => 3
[5] => 8
[6] => 19
[7] => 24
[8] => 56
[9] => 171)

sort($mixed,SORT_NUMERIC);
print_r($mixed);
//输出Array(
[0] => nemo
[1] => dog
[2] => cat
[3] => bruce
[4] => 3
[5] => 8
[6] => 19
[7] => 24
[8] => 56
[9] => 171)

sort($mixed,SORT_STRING);
print_r($mixed);
//输出Array(
[0] => 171
[1] => 19
[2] => 24
[3] => 3
[4] => 56
[5] => 8
[6] => bruce
[7] => cat
[8] => dog
[9] => nemo)
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息