PHP實(shí)現(xiàn)根據(jù)數(shù)組某個鍵值大小進(jìn)行排序的方法
本文實(shí)例講述了PHP實(shí)現(xiàn)根據(jù)數(shù)組某個鍵值大小進(jìn)行排序的方法。分享給大家供大家參考,具體如下:
問題:針對給定數(shù)組的某個鍵的鍵值進(jìn)行排序
解決方法:
//$a是排序數(shù)組,$b是要排序的數(shù)據(jù)集合,$result是最終結(jié)果 $b = array( array('name'=>'北京','nums'=>'200'), array('name'=>'上海','nums'=>'80'), array('name'=>'廣州','nums'=>'150'), array('name'=>'深圳','nums'=>'70') ); $a = array(); foreach($b as $key=>$val){ $a[] = $val['nums'];//這里要注意$val['nums']不能為空,不然后面會出問題 } //$a先排序 rsort($a); $a = array_flip($a); $result = array(); foreach($b as $k=>$v){ $temp1 = $v['nums']; $temp2 = $a[$temp1]; $result[$temp2] = $v; } //這里還要把$result進(jìn)行排序,健的位置不對 ksort($result); //然后就是你想看到的結(jié)果了 var_dump($result);
運(yùn)行結(jié)果:
array(4) { [0]=> array(2) { ["name"]=> string(4) "北京" ["nums"]=> string(3) "200" } [1]=> array(2) { ["name"]=> string(4) "廣州" ["nums"]=> string(3) "150" } [2]=> array(2) { ["name"]=> string(4) "上海" ["nums"]=> string(2) "80" } [3]=> array(2) { ["name"]=> string(4) "深圳" ["nums"]=> string(2) "70" } }
PS:這里再為大家推薦一款關(guān)于排序的演示工具供大家參考:
在線動畫演示插入/選擇/冒泡/歸并/希爾/快速排序算法過程工具:
http://tools.jb51.net/aideddesign/paixu_ys
更多關(guān)于PHP相關(guān)內(nèi)容感興趣的讀者可查看本站專題:《PHP數(shù)據(jù)結(jié)構(gòu)與算法教程》、《php程序設(shè)計(jì)算法總結(jié)》、《php字符串(string)用法總結(jié)》、《PHP數(shù)組(Array)操作技巧大全》、《PHP常用遍歷算法與技巧總結(jié)》及《PHP數(shù)學(xué)運(yùn)算技巧總結(jié)》
希望本文所述對大家PHP程序設(shè)計(jì)有所幫助。
- PHP多維數(shù)組指定多字段排序的示例代碼
- php自定義二維數(shù)組排序函數(shù)array_orderby用法示例
- PHP實(shí)現(xiàn)統(tǒng)計(jì)一個數(shù)字在排序數(shù)組中出現(xiàn)次數(shù)的方法
- PHP多維數(shù)組排序array詳解
- php usort 使用用戶自定義的比較函數(shù)對二維數(shù)組中的值進(jìn)行排序
- PHP編程實(shí)現(xiàn)多維數(shù)組按照某個鍵值排序的方法小結(jié)【2種方法】
- PHP實(shí)現(xiàn)二維數(shù)組根據(jù)key進(jìn)行排序的方法
- php常用數(shù)組array函數(shù)實(shí)例總結(jié)【賦值,拆分,合并,計(jì)算,添加,刪除,查詢,判斷,排序】
- PHP實(shí)現(xiàn)數(shù)組根據(jù)某個單元字段排序操作示例
相關(guān)文章
php判斷輸入不超過mysql的varchar字段的長度范圍
varchar類型字段,如果你設(shè)置長度為10,那么不論漢字和英文都可以存10個。2011-06-06PHP進(jìn)階學(xué)習(xí)之依賴注入與Ioc容器詳解
這篇文章主要介紹了PHP進(jìn)階學(xué)習(xí)之依賴注入與Ioc容器,結(jié)合實(shí)例形式詳細(xì)分析了依賴注入與Ioc容器概念、原理、用法及相關(guān)操作注意事項(xiàng),需要的朋友可以參考下2019-06-06配置eAccelerator和XCache擴(kuò)展來加速PHP程序的執(zhí)行
這篇文章主要介紹了配置eAccelerator和XCache擴(kuò)展來加速PHP程序的執(zhí)行的方法,XCache和PHP5.5以來自帶的Zend Opcache一樣都是在共享內(nèi)存中存儲Opcode的緩存器,需要的朋友可以參考下2015-12-12php實(shí)現(xiàn)mysql同步的實(shí)現(xiàn)方法
由于公司的英文網(wǎng)站放置在美國,而這些網(wǎng)站的數(shù)據(jù)要與大陸的服務(wù)器數(shù)據(jù)同步。 同步時間在一天之內(nèi)。2009-10-10通過chrome瀏覽器控制臺(Console)進(jìn)行PHP Debug的方法
這篇文章主要介紹了利用chrome瀏覽器控制臺(Console)進(jìn)行PHP Debug,需要的朋友可以參考下2016-10-10php實(shí)現(xiàn)QQ空間獲取當(dāng)前用戶的用戶名并生成圖片
這篇文章主要介紹了php實(shí)現(xiàn)QQ空間獲取當(dāng)前用戶的用戶名并生成圖片的方法,涉及php針對QQ空間及接口調(diào)用的相關(guān)技巧,具有一定參考借鑒價值,需要的朋友可以參考下2015-07-07