PHP根據數組某個索引值大小進行排序

來源:互聯網
上載者:User
本文主要和大家介紹了PHP實現根據數組某個索引值大小進行排序的方法,涉及php針對數組的遍曆、排序等相關操作技巧,需要的朋友可以參考下,希望能協助到大家。

問題:針對給定數組的某個鍵的索引值進行排序

解決方案:


//$a是排序數組,$b是要排序的資料集合,$result是最終結果$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進行排序,健的位置不對ksort($result);//然後就是你想看到的結果了var_dump($result);

運行結果:


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" }}

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.