/** * 获取最近的店铺 * @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。
好好研究研究。