PHP对二维数组进行排序

/**
 * 获取最近的店铺
 * @param $lng
 * @param $lat
 * @return array
 */
protected function getClosestShop($lng,$lat) {
    $shop = M('shop');
    $shop_list = $shop->where(['status'=>1,'is_del'=>0])->select();
    foreach ($shop_list as $k=>&$v) {
        $v['distance'] = Func::getDistance($lng,$lat,$v['longitude'],$v['latitude'],1,0);
    }
    $order_column = array_column($shop_list,'distance');
    array_multisort($order_column,SORT_ASC,SORT_NUMERIC,$shop_list);
    return $shop_list;
}

两个函数,array_column,array_multisort。
好好研究研究。

posted @ 2019-08-29 15:47  TBHacker  阅读(394)  评论(0编辑  收藏  举报