Comment trier un champ dans un tableau unidimensionnel dans un tableau bidimensionnel php

零到壹度
Libérer: 2023-03-23 15:22:01
original
2113 Les gens l'ont consulté

Le contenu de cet article est de partager avec vous comment trier un certain champ dans un tableau unidimensionnel dans un tableau PHP à deux dimensions. Il a une certaine valeur de référence. Les amis dans le besoin peuvent s'y référer

Les données de la base de données obtenues ici

public function hot_sort(){
 $type = input('type'); 
 $list = $this->get_hot_sort($type); 
 $res = $list->data; 
 $re = $this->object_array($res); 
 foreach ($re as $k=>$v){ 
 $data= Db::name('merchants')->field('share_num')->where(['gl_merchants_id'=>$v['user_id']])->find(); 
 $re[$k]['share_num'] = $data['share_num']; 
 } 
 $result = $this->quick_sort($re);
 //这里调用方法根据某个字段进行排序 success($result); 
 }
Copier après la connexion

================================== == ========================================

方法进行排序 /**
     * @param $arrUsers
     * @return mixed
     *二维数组某个字段进行排序
     */

    function quick_sort($arrUsers)
    {
        $sort = array(      
              'direction' => 'SORT_DESC', //排序顺序标志 SORT_DESC 降序;SORT_ASC 升序
              'field'     => 'share_num',       //排序字段
        );        
        $arrSort = array();        
        foreach($arrUsers AS $k => $v){      
              foreach($v AS $key=>$value){        
                      $arrSort[$key][$k] = $value;
            }
        }        
        if($sort['direction']){
            array_multisort($arrSort[$sort['field']], constant($sort['direction']), $arrUsers);
        }       
        
         return $arrUsers;

    }

原来的排序结果
{  
  "status": "ok",    
  "data": [
        {      
              "user_id": "29",            
              "shop_id": 7,            
              "total_money": 40000,            
              "user_name": "b1",            
              "user_headimg": "https://ucenter.ttzxh.com/image.php/ucenter/data/upload/media/plantform/image/20171213/1513144055861391.jpg!120x120.jpg",            "share_num": ""
        },
        {      
              "user_id": "16",            
              "shop_id": 6,            
              "total_money": 15000.01,            
              "user_name": "b7",            
              "user_headimg": "https://ucenter.ttzxh.com/image.php/ucenter/data/upload/media/plantform/image/20180122/1516586013148395.jpg!120x120.jpg",            "share_num": ""
        },
        {      
              "user_id": "13",            
              "shop_id": 4,            
              "total_money": 5000,            
              "user_name": "gelu1234",            
              "user_headimg": "https://ucenter.ttzxh.com/image.php/ucenter/data/upload/media/plantform/image/20171213/1513144055861391.jpg!120x120.jpg",            "share_num": ""
        },
        {            "user_id": "56",            
                     "shop_id": 20,            
                     "total_money": 70,            
                     "user_name": "HECAI",            
                     "user_headimg": "https://ucenter.ttzxh.com/image.php/ucenter/data/upload/media/plantform/image/20171213/1513144055861391.jpg!120x120.jpg",            "share_num": ""
        },
        {       
             "user_id": "32",            
             "shop_id": 9,            
             "total_money": 37.1,            
             "user_name": "baxianqiao",            
             "user_headimg": "https://ucenter.ttzxh.com/image.php/ucenter/data/upload/media/plantform/image/20171213/1513144055861391.jpg!120x120.jpg",            "share_num": "670000"
        },
        {       
             "user_id": "8",            
             "shop_id": 1,            
             "total_money": 0,            
             "user_name": "SXMY",            
             "user_headimg": "https://ucenter.ttzxh.com/image.php/ucenter/data/upload/media/plantform/image/20171213/1513144055861391.jpg!120x120.jpg",            "share_num": ""
        },
        {       
             "user_id": "35",            
             "shop_id": 8,            
             "total_money": 0,            
             "user_name": "self01",            
               
               "user_headimg": "https://ucenter.ttzxh.com/image.php/ucenter/data/upload/media/plantform/image/20180122/1516586013148395.jpg!120x120.jpg",            "share_num": ""
        }
    ]
}

现在排序的结果
{    "status": "ok",    "data": [
        {       
             "user_id": "32",            
             "shop_id": 9,            
             "total_money": 37.1,            
             "user_name": "baxianqiao",            
             "user_headimg": "https://ucenter.ttzxh.com/image.php/ucenter/data/upload/media/plantform/image/20171213/1513144055861391.jpg!120x120.jpg",            "share_num": "670000"
        },
        {      
              "user_id": "8",            
              "shop_id": 1,            
              "total_money": 0,            
              "user_name": "SXMY",            
              "user_headimg": "https://ucenter.ttzxh.com/image.php/ucenter/data/upload/media/plantform/image/20171213/1513144055861391.jpg!120x120.jpg",            "share_num": ""
        },
        {       
             "user_id": "13",            
             "shop_id": 4,            
             "total_money": 5000,            
             "user_name": "gelu1234",            
             "user_headimg": "https://ucenter.ttzxh.com/image.php/ucenter/data/upload/media/plantform/image/20171213/1513144055861391.jpg!120x120.jpg",            "share_num": ""
        },
        {        
             "user_id": "16",            
             "shop_id": 6,            
             "total_money": 15000.01,            
             "user_name": "b7",            
             "user_headimg": "https://ucenter.ttzxh.com/image.php/ucenter/data/upload/media/plantform/image/20180122/1516586013148395.jpg!120x120.jpg",            "share_num": ""
        },
        {     
              "user_id": "29",            
              "shop_id": 7,            
              "total_money": 40000,            
              "user_name": "b1",            
              "user_headimg": "https://ucenter.ttzxh.com/image.php/ucenter/data/upload/media/plantform/image/20171213/1513144055861391.jpg!120x120.jpg",            "share_num": ""
        },
        {       
             "user_id": "35",            
             "shop_id": 8,            
             "total_money": 0,            
             "user_name": "self01",            
             "user_headimg": "https://ucenter.ttzxh.com/image.php/ucenter/data/upload/media/plantform/image/20180122/1516586013148395.jpg!120x120.jpg",            "share_num": ""
        },
        {      
              "user_id": "56",            
              "shop_id": 20,            
              "total_money": 70,            
              "user_name": "HECAI",            
              "user_headimg": "https://ucenter.ttzxh.com/image.php/ucenter/data/upload/media/plantform/image/20171213/1513144055861391.jpg!120x120.jpg",            "share_num": ""
        }
    ]
}
Copier après la connexion

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Étiquettes associées:
php
source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal