如何在Laravel中为每个循环保存逗号分隔的值

如何在Laravel中为每个循环保存逗号分隔的值,laravel,group-concat,Laravel,Group Concat,我正在使用下面的laravel代码接近驾驶员id $nearest_car = DriverLocation::select(DB::raw('*, ( 6371 * acos( cos( radians('.$pickup_latitude.') ) * cos( radians( latitude ) ) * cos(radians( longitude ) - radians('.$pickup_longitude.') ) + sin( radians('.$pickup_latitu

我正在使用下面的laravel代码接近驾驶员id

 $nearest_car = DriverLocation::select(DB::raw('*, ( 6371 * acos( cos( radians('.$pickup_latitude.') ) * cos( radians( latitude ) ) * cos(radians( longitude ) - radians('.$pickup_longitude.') ) + sin( radians('.$pickup_latitude.') ) * sin( radians( latitude ) ) ) ) as distance'))
->having('distance', '<=', 5)->where('driver_location.status','Online')->where('driver_location.car_id',$car_id);
我想做的是获取多个最近的不同驱动程序id(比如5到10个最近的id),并将所有id作为逗号分隔的值保存在
driver\u id
列中。以上所有细节对于所有驱动程序都是相同的。只需要获取所有最近的驱动程序id,并将其保存为逗号分隔的值,如下图所示


假设您的
驱动器位置
型号具有
用户id
,请应用以下命令获得逗号分隔的
用户id

$nearest_driver_id=DriverLocation::select(DB::raw('*,(6371*acos(弧度('.$pickup_lation'))*cos(弧度(纬度))*cos(弧度(经度)-弧度('.$pickup_lation'))+sin(弧度('.$pickup_lation'))*sin(弧度(纬度))作为距离)
->有('距离','
 $request  = new Request;
        $request->user_id          =   $rider_id;
        $request->pickup_latitude  =   $pickup_latitude;
        $request->pickup_longitude =   $pickup_longitude;
        $request->drop_latitude    =   $drop_latitude;
        $request->drop_longitude   =   $drop_longitude;
        $request->driver_id        =   $nearest_car->user_id;
        $request->car_id           =   $car_id;
        $request->pickup_location  =   $pickup_location;
        $request->drop_location    =   $drop_location;
        $request->payment_mode   =   $payment_method_store;