PHP 多維數(shù)組進(jìn)行排序
/* function:二維數(shù)組按指定的鍵值排序 $array=array( 0=>array(’id’=>8,’username’=>’phpernote’), 1=>array(’id’=>9,’username’=>’com’), 2=>array(’id’=>5,’username’=>’www’) ); 現(xiàn)在需要將這個(gè)二維數(shù)組按id升序排列,則: array_sort($array,’id’,’asc’); */ public function array_sort($array,$keys,$type=’asc’){ if(!isset($array) || !is_array($array) || empty($array)){ return ’’; } if(!isset($keys) || trim($keys)==’’){ return ’’; } if(!isset($type) || $type==’’ || !in_array(strtolower($type),array(’asc’,’desc’))){ return ’’; } $keysvalue=array(); foreach($array as $key=>$val){ $val[$keys] = str_replace(’-’,’’,$val[$keys]); $val[$keys] = str_replace(’ ’,’’,$val[$keys]); $val[$keys] = str_replace(’:’,’’,$val[$keys]); $keysvalue[] =$val[$keys]; } asort($keysvalue); //key值排序 reset($keysvalue); //指針重新指向數(shù)組第一個(gè) foreach($keysvalue as $key=>$vals) { $keysort[] = $key; } $keysvalue = array(); $count=count($keysort); if(strtolower($type) != ’asc’){ for($i=$count-1; $i>=0; $i--) { $keysvalue[] = $array[$keysort[$i]]; } }else{ for($i=0; $i<$count; $i++){ $keysvalue[] = $array[$keysort[$i]]; } } return $keysvalue; }
相關(guān)文章:
1. JavaScript Reduce使用詳解2. 詳解JAVA 強(qiáng)引用3. 在JSP中使用formatNumber控制要顯示的小數(shù)位數(shù)方法4. 解決AJAX返回狀態(tài)200沒(méi)有調(diào)用success的問(wèn)題5. Python TestSuite生成測(cè)試報(bào)告過(guò)程解析6. SpringBoot集成mqtt的多模塊項(xiàng)目配置詳解7. 深入了解JAVA 軟引用8. SpringBoot2.0集成MQTT消息推送功能實(shí)現(xiàn)9. IntelliJ IDEA設(shè)置默認(rèn)瀏覽器的方法10. SpringBoot集成Redisson實(shí)現(xiàn)延遲隊(duì)列的場(chǎng)景分析
