Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/ruby-on-rails-4/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
对于Laravel中的每个循环_Laravel_Foreach - Fatal编程技术网

对于Laravel中的每个循环

对于Laravel中的每个循环,laravel,foreach,Laravel,Foreach,我的driver\u位置表中有以下数据库结构 从这个表中,我获取了距离在5公里以内的近距离驾驶员id,其在线状态与下面在laravel中的查询相同 $nearest_car = DriverLocation::select(DB::raw('*, ( 6371 * acos( cos( radians('.$pickup_latitude.') ) * cos( radians( latitude ) ) * cos(radians( longitude ) - radians('.$pic

我的
driver\u位置表中有以下数据库结构

从这个表中,我获取了距离在5公里以内的近距离驾驶员id,其在线状态与下面在laravel中的查询相同

 $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);

要在视图中访问此项,您必须执行以下操作:

@foreach ($text as $demo)
<p>This my product name {{ $demo->name }}</p>
<p>This my product category {{ $demo->category->name}}</p>
@endforeach
@foreach($text作为$demo)
这是我的产品名称{{$demo->name}

这是我的产品类别{{$demo->category->name}

@endforeach
如果您想在投标申请表中插入5条记录,则只需从以下查询中获取5条记录:

$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)
->limit(5)->get();
在表中插入:

DB::table('bid_request')->insert($data);

使用Forloop您应该在变量中指定
$i

for($i=0;$i<5;$i++){
    DB::table('bid_request')->insert(
        'user_id'     =>   $rider_id[$i], 
        'group_id'   =>   null,
         'pickup_latitude'     => $pickup_latitude, 
        'pickup_longitude'   =>   $pickup_longitude,
         'drop_latitude'     =>   $drop_latitude, 
        'drop_longitude'   =>    $drop_longitude,
         'driver_id'     =>   $nearest_car->user_id, 
        'car_id'   =>   $car_id,
         'pickup_location'     =>   $pickup_location, 
        'drop_location'   =>    $drop_location,
         'payment_mode'     =>   $payment_method_store, 
        'status'   =>   'Pending',
         'is_wallet'     =>    $is_wallet, 
        'driver_mobile'   =>    $driver_details->mobile_number,
         'driver_avg_ratings'     =>   $driver_details->driver_avg_ratings, 

        'distance'   =>   $dis,
        'min_time'   =>   $get_near_car_time

        //minimum time and distance needs to b
     );
    }
 }

谢谢,它工作起来很有魅力。当这么多用户使用同一条记录时,这会是一个性能问题吗?:)这不是一个大问题,bcz for record insert将只执行一个查询。如果记录太大,可能需要在for循环中花费时间,但记录将插入到bunchone问题中,则将从users表中插入driver_avg_ratings,这对每个驱动程序都不同,但插入的值与allin foreach循环的第一个驱动程序评级相同。我们使用$value变量,因此您可以使用它。为了参考我在driver\u id中所做的:“driver\u id”=>$value->user\u id,当我使用这个“driver\u avg\u ratings”=>$value->$driver\u details->driver\u avg\u ratings时,它没有插入任何数据
DB::table('bid_request')->insert($data);
for($i=0;$i<5;$i++){
    DB::table('bid_request')->insert(
        'user_id'     =>   $rider_id[$i], 
        'group_id'   =>   null,
         'pickup_latitude'     => $pickup_latitude, 
        'pickup_longitude'   =>   $pickup_longitude,
         'drop_latitude'     =>   $drop_latitude, 
        'drop_longitude'   =>    $drop_longitude,
         'driver_id'     =>   $nearest_car->user_id, 
        'car_id'   =>   $car_id,
         'pickup_location'     =>   $pickup_location, 
        'drop_location'   =>    $drop_location,
         'payment_mode'     =>   $payment_method_store, 
        'status'   =>   'Pending',
         'is_wallet'     =>    $is_wallet, 
        'driver_mobile'   =>    $driver_details->mobile_number,
         'driver_avg_ratings'     =>   $driver_details->driver_avg_ratings, 

        'distance'   =>   $dis,
        'min_time'   =>   $get_near_car_time

        //minimum time and distance needs to b
     );
    }
 }
foreach($variable_which_contains_all_values as $value){
        DB::table('bid_request')->insert(
            'user_id'     =>   $value->rider_id, 
            'group_id'   =>   null,
             'pickup_latitude'     => $pickup_latitude, 
            'pickup_longitude'   =>   $pickup_longitude,
             'drop_latitude'     =>   $drop_latitude, 
            'drop_longitude'   =>    $drop_longitude,
             'driver_id'     =>   $nearest_car->user_id, 
            'car_id'   =>   $car_id,
             'pickup_location'     =>   $pickup_location, 
            'drop_location'   =>    $drop_location,
             'payment_mode'     =>   $payment_method_store, 
            'status'   =>   'Pending',
             'is_wallet'     =>    $is_wallet, 
            'driver_mobile'   =>    $driver_details->mobile_number,
             'driver_avg_ratings'     =>   $driver_details->driver_avg_ratings, 

            'distance'   =>   $dis,
            'min_time'   =>   $get_near_car_time

            //minimum time and distance needs to b
         );

        }
     }