/** * 二维数组多字段排序(方法) * @param $list * @param $field * @return mixed * Author: Lyn * Date: 2020/8/25 15:07 */ private function sortByCols($list, $field) { $sort_arr = array(); $sort_rule = ''; foreach ($field as $sort_field => $sort_way) { foreach ($list as $key => $val) { $sort_arr[$sort_field][$key] = $val[$sort_field]; } $sort_rule .= '$sort_arr["' . $sort_field . '"],' . $sort_way . ','; } if (empty($sort_arr) || empty($sort_rule)) { return $list; } eval('array_multisort(' . $sort_rule . ' $list);'); return $list; } //用法 $this->sortByCols($list['data'], array( 'id' => SORT_DESC, //'value' => SORT_DESC, ));