PHP實(shí)現(xiàn)根據(jù)數(shù)組某個(gè)鍵值大小進(jìn)行排序的方法
本文實(shí)例講述了PHP實(shí)現(xiàn)根據(jù)數(shù)組某個(gè)鍵值大小進(jìn)行排序的方法。分享給大家供大家參考,具體如下:
問(wèn)題:針對(duì)給定數(shù)組的某個(gè)鍵的鍵值進(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']不能為空,不然后面會(huì)出問(wèn)題
}
//$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)行排序,健的位置不對(duì)
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)于排序的演示工具供大家參考:
在線動(dòng)畫演示插入/選擇/冒泡/歸并/希爾/快速排序算法過(guò)程工具:
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é)》
希望本文所述對(duì)大家PHP程序設(shè)計(jì)有所幫助。
- PHP多維數(shù)組指定多字段排序的示例代碼
- php自定義二維數(shù)組排序函數(shù)array_orderby用法示例
- PHP實(shí)現(xiàn)統(tǒng)計(jì)一個(gè)數(shù)字在排序數(shù)組中出現(xiàn)次數(shù)的方法
- PHP多維數(shù)組排序array詳解
- php usort 使用用戶自定義的比較函數(shù)對(duì)二維數(shù)組中的值進(jìn)行排序
- PHP編程實(shí)現(xiàn)多維數(shù)組按照某個(gè)鍵值排序的方法小結(jié)【2種方法】
- PHP實(shí)現(xiàn)二維數(shù)組根據(jù)key進(jìn)行排序的方法
- php常用數(shù)組array函數(shù)實(shí)例總結(jié)【賦值,拆分,合并,計(jì)算,添加,刪除,查詢,判斷,排序】
- PHP實(shí)現(xiàn)數(shù)組根據(jù)某個(gè)單元字段排序操作示例
相關(guān)文章
php判斷輸入不超過(guò)mysql的varchar字段的長(zhǎng)度范圍
varchar類型字段,如果你設(shè)置長(zhǎng)度為10,那么不論漢字和英文都可以存10個(gè)。2011-06-06
PHP進(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ò)展來(lái)加速PHP程序的執(zhí)行
這篇文章主要介紹了配置eAccelerator和XCache擴(kuò)展來(lái)加速PHP程序的執(zhí)行的方法,XCache和PHP5.5以來(lái)自帶的Zend Opcache一樣都是在共享內(nèi)存中存儲(chǔ)Opcode的緩存器,需要的朋友可以參考下2015-12-12
php實(shí)現(xiàn)mysql同步的實(shí)現(xiàn)方法
由于公司的英文網(wǎng)站放置在美國(guó),而這些網(wǎng)站的數(shù)據(jù)要與大陸的服務(wù)器數(shù)據(jù)同步。 同步時(shí)間在一天之內(nèi)。2009-10-10
通過(guò)chrome瀏覽器控制臺(tái)(Console)進(jìn)行PHP Debug的方法
這篇文章主要介紹了利用chrome瀏覽器控制臺(tái)(Console)進(jìn)行PHP Debug,需要的朋友可以參考下2016-10-10
php實(shí)現(xiàn)QQ空間獲取當(dāng)前用戶的用戶名并生成圖片
這篇文章主要介紹了php實(shí)現(xiàn)QQ空間獲取當(dāng)前用戶的用戶名并生成圖片的方法,涉及php針對(duì)QQ空間及接口調(diào)用的相關(guān)技巧,具有一定參考借鑒價(jià)值,需要的朋友可以參考下2015-07-07
詳談phpAdmin修改密碼后拒絕訪問(wèn)的問(wèn)題
下面小編就為大家?guī)?lái)一篇詳談phpAdmin修改密碼后拒絕訪問(wèn)的問(wèn)題。小編覺(jué)得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧2017-04-04

