php二维数组,按照指定的key,去排序value值

$arr = array(
    '11'=>array(
        'a'=>1,
        'b'=>2,
    ),
    '22'=>array(
        'a'=>3,
        'b'=>4,
    ),
    '33'=>array(
        'a'=>5,
        'b'=>6,
    )
);
$data = $this->array_sort($arr,'a','desc','yes');

private function array_sort($arr,$keys,$orderby='asc',$key='no'){
    $keysvalue = $new_array = array();
    foreach($arr as $k=>$v){
        $keysvalue[$k] = $v[$keys];
    }
    if($orderby=='asc'){
        asort($keysvalue);
    }else{
        arsort($keysvalue);
    }
    reset($keysvalue);
    foreach($keysvalue as $k=>$v){
        if($key=='yes'){
            $new_array[$k] = $arr[$k];
        }else{
            $new_array[] = $arr[$k];
        }
    }
    return $new_array;
}
原文地址:https://www.cnblogs.com/rxbook/p/6678008.html