php 数组(array)排序

来源:互联网 发布:化验单制作软件 编辑:程序博客网 时间:2024/06/12 18:13

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)
0 0