標籤:
一、一維數組排序
1.1、sort以升序對數組排序
$arrSort=array(3,56,6,8,9,7,6);sort($arrSort);print_r($arrSort);
輸出:
Array
(
[0] => 3
[1] => 6
[2] => 6
[3] => 7
[4] => 8
[5] => 9
[6] => 56
)
1.2、rsort以降序對數組排序
$arrRSort=array(3,56,6,8,9,7,6);rsort($arrRSort);print_r($arrRSort);
輸出:
Array
(
[0] => 56
[1] => 9
[2] => 8
[3] => 7
[4] => 6
[5] => 6
[6] => 3
)
1.3、asort根據值,以升序對關聯陣列進行排序
$arrASort=[ "name"=>"wangk", "blog"=>"rhythmk.cnblogs.com", "address"=>"hunan", "company"=>"abcdef"];asort($arrASort);print_r($arrASort);
輸出:
(
[company] => abcdef
[address] => hunan
[blog] => rhythmk.cnblogs.com
[name] => wangk
)
1.4、ksort根據鍵,以升序對關聯陣列進行排序
$arrKSort=[ "name"=>"wangk", "blog"=>"rhythmk.cnblogs.com", "address"=>"hunan", "company"=>"abcdef"];ksort($arrKSort);print_r($arrKSort);
輸出:
(
[address] => hunan
[blog] => rhythmk.cnblogs.com
[company] => abcdef
[name] => wangk
)
1.5、arsort根據值,以降序對關聯陣列進行排序
$arrARSort=[ "name"=>"wangk", "blog"=>"rhythmk.cnblogs.com", "address"=>"hunan", "company"=>"abcdef"];arsort($arrARSort);print_r($arrARSort);
輸出:
Array
(
[name] => wangk
[blog] => rhythmk.cnblogs.com
[address] => hunan
[company] => abcdef
)
1.6、krsort根據鍵,以降序對關聯陣列進行排序
$arrKRSort=[ "name"=>"wangk", "blog"=>"rhythmk.cnblogs.com", "address"=>"hunan", "company"=>"abcdef"];krsort($arrKRSort);print_r($arrKRSort);
輸出:
Array
(
[name] => wangk
[company] => abcdef
[blog] => rhythmk.cnblogs.com
[address] => hunan
)
二、多維陣列自訂排序
$arrUSort=[ ["id"=>10,"title"=>"abcd"], ["id"=>11,"title"=>"dvbcd"], ["id"=>2,"title"=>"cddgbcd"], ["id"=>5,"title"=>"ea"], ["id"=>8,"title"=>"aceg"]]; function UserDefinedSort($a,$b){ if($a["title"]>$b["title"]) { return 1; }else{ return 0; }}usort($arrUSort,‘UserDefinedSort‘);print_r($arrUSort);
輸出:
Array
(
[0] => Array
(
[id] => 10
[title] => abcd
)
[1] => Array
(
[id] => 8
[title] => aceg
)
[2] => Array
(
[id] => 2
[title] => cddgbcd
)
[3] => Array
(
[id] => 11
[title] => dvbcd
)
[4] => Array
(
[id] => 5
[title] => ea
)
)
參考:
http://www.w3school.com.cn/php/php_arrays_sort.asp
php 數組排序