//根据二维数组相同值来分组
public static function array_group_by($arr, $key)
{
$grouped = [];
foreach ($arr as $value) {
$grouped[$value[$key]][] = $value;
}
if (func_num_args() > 2) {
$args = func_get_args();
foreach ($grouped as $key => $value) {
$parms = array_merge([$value], array_slice($args, 2, func_num_args()));
$grouped[$key] = call_user_func_array('array_group_by', $parms);
}
}
//分数排序
foreach ($grouped as &$_group) {
$arrSort = array();
foreach($_group as $r_key => $r_val){
foreach($r_val as $key => $val){
$arrSort[$key][$r_key] = $val;
}
}
}
return $grouped;
}