陣列排序【值排序,值相同鍵排序】
阿新 • • 發佈:2019-01-24
#有陣列$list=array(‘mango’=>123,’orange’=>’234’,’banana’=>’101’,’apple’=>123), #要求:不使用PHP自帶函式,自己編寫一個函式,對該陣列按值升序排序,值相同的按鍵升序排列 function mutisort( $arr ){ if(!is_array($arr)) { echo "輸入的不是陣列"; return false; } if(count($arr) < 1) { echo "陣列不能為空"; return false; } while( count( $arr ) ){ $max = 0; $max_key = ''; foreach( $arr as $key => $value ){ if( $max < $value ){ $max = $value; $max_key = $key; }else if( $max == $value && $max_key > $key ){ $max = $value; $max_key = $key; } } unset($arr[$max_key]); $arr_new[$max_key] = $max; } print_r($arr_new); exit; } $list = array( 'mango'=>123, 'orange'=> 234, 'banana' => 101, 'apple' => 123 ); echo '<pre/>'; print_r( mutisort( $list ) );