PHP處理返回數據,指定按照數據中的字段排序

當查詢數據時,要求最終返回數據按照某個字段排序,可是在SQL語句中或查詢模型中沒法直接按照此字段進行排序,則下面這個方法就頗有效了。
先看代碼:php

public function res_sort($data,$sort_type,$field) {
       $sort = array(
           'direction' => $sort_type,
           'field'     => $field,
       );
       $arrSort = array();
       foreach($data AS $uniqid => $row){
           foreach($row AS $key=>$value){
               $arrSort[$key][$uniqid] = $value;
           }
       }
       if($sort['direction']){
           array_multisort($arrSort[$sort['field']], constant($sort['direction']), $data);
       }
       return $data;
  }

說明: d a t a ; sort_type是排序類型:SORT_ASC(升序),SORT_DESC(降序);$field是指定排序的字段。
使用:獲取數據後,在須要使用的地方,調用此方法,傳入參數,最終會返回排序好的數據。this

//例
$new_data = $this->res_sort($data,'SORT_DESC','age');  //$new_data就是按照age降序排序後的數據

但願能幫到你。atom

相關文章
相關標籤/搜索