Home > Article > Backend Development > How to sort a field in one-dimensional array in php two-dimensional array
The content of this article is to share with you how to sort a certain field in one-dimensional array in PHP two-dimensional array. It has certain reference value. Friends in need can refer to it
The data in the database obtained here
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); }
====================================== =====================================
方法进行排序 /** * @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": "" } ] }
The above is the detailed content of How to sort a field in one-dimensional array in php two-dimensional array. For more information, please follow other related articles on the PHP Chinese website!