sort,ksort,asort的区别

sort--对数组的val进行排序

ksort--对数组的key值进行排序

asort--对数组进行排序,键与值的对应关系不变

 

1、sort对数组排序

格式如下:bool sort(array &$array[,int $sort_flags])

使用这个函数结束后单元将被从低到最高重新安排

返回boolean

 

$sort_flags这个参数是在php4加入进来的,可以用以下值改变排序的行为

排序类型标记:

SORT_REGULAR-正常比较单元(不改变类型)

SORT_NUMERIC-单元被作为数字来比较

SORT_STRING-单元被作为字符串来比较

SORT_LOCALE_STRING-根据当前的区域(locale)设置来把单元当作字符串比较.php4.4.0和5.0.2新加。在

PHP6之前,使用了系统的区域设置,可以用setlocale()来改变。自php6起,必须用i18n_loc_set_default()函数

举例说明sort 的用法

$array = array('23','96','12','50','3');

sort($array);

foreach($array as $key=>$val){

    echo "array[".$key."]=".$val."/n";

}

 

2、ksort-对数组按照键名排序

格式如下:bool ksort(array &$array[,int $sort_flags])

对数组按照键名排序,保留键名到数据的关联。

返回boolean

 

$sort_flags参数的用法跟sort一样

举例说明ksort的用法

$fruits = array("d"=>"lemon","a"=>"orange","b"=>"banana","c"=>"apple");

ksort($fruits);

foreach($fruits as $key=>$val){

    echo "$key = $val/n";

}

output:

a = orange

b = banana

c = apple

d = lemon

 

3、asort-对数组进行排序并保持索引关系

格式如下:bool asort(array &$array[,int $sort_flags])

本函数对数组进行排序,数组的索引保持和单元的关联。主要用于对那些单元顺序很重要的结合数组进行排序

返回boolean值

$sort_flags参数的用法跟sort一样

举例说明ksort的用法

$fruits = array("d"=>"lemon","a"=>"orange","b"=>"banana","c"=>"apple");

ksort($fruits);

foreach($fruits as $key=>$val){

    echo "$key = $val/n";

}

 

output:

c = apple

b = banana

d = lemon

a = orange

posted @ 2016-04-25 21:18  不解凡忧  Views(3113)  Comments(0Edit  收藏  举报