99麻豆久久久国产免费福利精品,国产精品成人国产乱,玖玖操,手机看片169,国产精彩视频在线观看,午夜亚洲福利视频,国产伦乱视频

龍巖易富通網(wǎng)絡(luò )科技有限公司

龍巖小程序開(kāi)發(fā),龍巖分銷(xiāo)系統

php基礎篇-二維數組排序 array_multisort

2015.10.09 | 2129閱讀 | 0條評論 | php

對2維數組或者多維數組排序是常見(jiàn)的問(wèn)題,在php中我們有個(gè)專(zhuān)門(mén)的多維數組排序函數,下面簡(jiǎn)單介紹下:

array_multisort(array1,sorting order, sorting type,array2,array3..)是對多個(gè)數組或多維數組進(jìn)行排序的函數。


array1必需。規定輸入的數組。
sorting order可選。規定排列順序。可能的值是 SORT_ASC 和 SORT_DESC。
sorting type可選。規定排序類(lèi)型。可能的值是SORT_REGULAR、SORT_NUMERIC和SORT_STRING。
array2可選。規定輸入的數組。
array3可選。規定輸入的數組。



參數中的數組被當成一個(gè)表的列并以行來(lái)進(jìn)行排序 - 這類(lèi)似 SQL 的 ORDER BY 子句的功能。第一個(gè)數組是要排序的主要數組。數組中的行(值)比較為相同的話(huà),就會(huì )按照下一個(gè)輸入數組中相應值的大小進(jìn)行排序,依此類(lèi)推。

第一個(gè)參數是數組,隨后的每一個(gè)參數可能是數組,也可能是下面的排序順序標志(排序標志用于更改默認的排列順序)之一:

  • SORT_ASC - 默認,按升序排列。(A-Z)

  • SORT_DESC - 按降序排列。(Z-A)

隨后可以指定排序的類(lèi)型:

  • SORT_REGULAR - 默認。將每一項按常規順序排列。

  • SORT_NUMERIC - 將每一項按數字順序排列。

  • SORT_STRING - 將每一項按字母順序排列

<?php


function my_sort($arrays,$sort_key,$sort_order=SORT_ASC,$sort_type=SORT_NUMERIC ){ 

if(is_array($arrays)){ 

foreach ($arrays as $array){ 

if(is_array($array)){ 

$key_arrays[] = $array[$sort_key]; 

}else{ 

return false; 

}else{ 

return false; 

}

array_multisort($key_arrays,$sort_order,$sort_type,$arrays); 

return $arrays; 

}


$person =  array(

array('id'=>1,'name'=>'fj','weight'=>100,'height'=>180),

array('id'=>2,'name'=>'tom','weight'=>53,'height'=>150),

array('id'=>3,'name'=>'jerry','weight'=>120,'height'=>156),

array('id'=>4,'name'=>'bill','weight'=>110,'height'=>190),

array('id'=>5,'name'=>'linken','weight'=>80,'height'=>200),

array('id'=>6,'name'=>'madana','weight'=>95,'height'=>110),

array('id'=>7,'name'=>'jordan','weight'=>70,'height'=>170)

);

var_dump($person);

$person = my_sort($person,'name',SORT_ASC,SORT_STRING);


var_dump($person);

$person = my_sort($person,'weight');


var_dump($person);

?>


這里的重點(diǎn)就是,先把要排序的key存到一個(gè)一維數組中,然后就可以使用array_multisort()這個(gè)函數,將數組按照key進(jìn)行排序了,當然,這里的排序你完全可以不適用array_multisort()這個(gè)函數,僅僅通過(guò)foreach遍歷也能達到這個(gè)效果,但是既然php開(kāi)發(fā)者給我們提供了更好的辦法,我們就可以省去不必要的麻煩了。


本文轉載:http://blog.csdn.net/fujiafeihudui/article/details/38583331 ,版權作者所有。

贊 (

發(fā)表評論

涪陵区| 昌宁县| 巴彦淖尔市| 丰城市| 保亭| 吴桥县| 信宜市| 垫江县| 永年县| 台安县| 大石桥市| 县级市| 象山县| 伊金霍洛旗| 汾阳市| 扶余县| 南京市| 界首市| 错那县| 东乡县| 上高县| 朝阳区| 晋中市| 囊谦县| 垦利县| 崇左市| 阿图什市| 天津市| 永宁县| 红桥区| 曲松县| 沐川县| 吉安市| 芜湖县| 晋城| 泰安市| 全椒县| 高邮市| 简阳市| 浦江县| 海林市|