Laravel의 각 루프에 대해

Mithu

내 데이터베이스 구조 아래에 driver_location table

여기에 이미지 설명 입력

이 테이블에서 나는 5km 거리 내에 있고 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);

이제 내가 원하는 것은 driver_location테이블의 각 near by user_id에 대해 요청이 bid_request근처의 5 명의 드라이버로 제한된 테이블에 삽입되는 것 입니다. 아래와 같이 for 루프를 시도했지만 드라이버 위치 테이블에서 동일한 user_id에 대한 레코드를 여러 번 삽입하고 있습니다. 사용자 당 하나의 요청이 필요합니다.

 for($i=0;$i<5;$i++){
    DB::table('bid_request')->insert(
    array(
        'user_id'     =>   $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
       )
     );

    }
 }// end $is_wallet!='Bid'
야신 파텔

아래 쿼리에서 5 개의 레코드 만 가져 오는 것보다 bid_request 테이블에 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();

이제 테이블에 삽입 할 레코드 배열이 필요합니다.

$data = [];
foreach ($nearest_car as $key => $value) {
  $data[] = [
    'user_id'     =>   $rider_id,
    'group_id'   =>   null,
    'pickup_latitude'     => $pickup_latitude,
    'pickup_longitude'   =>   $pickup_longitude,
    'drop_latitude'     =>   $drop_latitude,
    'drop_longitude'   =>    $drop_longitude,
    'driver_id'     =>   $value->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
  ];
}

표에 삽입 :

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

이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.

침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제

에서 수정
0

몇 마디 만하겠습니다

0리뷰
로그인참여 후 검토

관련 기사

분류에서Dev

laravel의 각 루프에 대해?

분류에서Dev

자바의 각 루프에 대해

분류에서Dev

열의 각 루프에 대해

분류에서Dev

XSLT의 각 루프에 대해

분류에서Dev

PHP의 각 루프에 대해

분류에서Dev

Android의 각 루프에 대해 List의 각 객체 수정

분류에서Dev

각 루프 NullReferenceException에 대해

분류에서Dev

VB.net의 각 루프에 대해 조건문에 멈춤

분류에서Dev

루프의 각 항목에 대해 배열에 추가

분류에서Dev

for 루프의 각 루프에 대해 새 변수 이름을 만듭니다.

분류에서Dev

널리스트의 각 루프에 대해

분류에서Dev

보호 된 문자열 함수의 각 루프에 대해

분류에서Dev

반복기 메서드의 각 루프에 대해

분류에서Dev

피벗 테이블의 각 루프에 대해 최적화

분류에서Dev

Meter의 각 루프에 대해 내부 변수 사용

분류에서Dev

각 루프에 대해 두 개의 열을 빼는 cakephp 코드

분류에서Dev

범위 오류 #VALUE의 각 루프에 대해 Excel VBA

분류에서Dev

vba의 각 루프에 대한 응축

분류에서Dev

PHP의 두 날짜, 날짜 사이의 각 루프에 대해 반대로?

분류에서Dev

Google 스프레드 시트의 각 루프에 대해? 예를 들어 VBA

분류에서Dev

knitr의 루프에 의해 생성 된 각 차트에 대한 제목 추가

분류에서Dev

PHP에서 두 개의 배열 값을 실행하는 각 루프에 대해

분류에서Dev

컨트롤러의 각 루프에 대해 객체에 데이터 추가

분류에서Dev

각 루프 목록보기에 대해

분류에서Dev

값의 각 ID에 대해

분류에서Dev

Postgresql, 테이블 루프의 각 사용자 ID에 대해 x 번 삽입

분류에서Dev

Strink 토크 나이저 XSLT 1.0 문자열의 각 단어에 대해 루프

분류에서Dev

템플릿 요리사의 각 루프에 대해 실행하는 방법

분류에서Dev

각 루프에 대해 PHP로 하나의 레코드 만 게시

Related 관련 기사

  1. 1

    laravel의 각 루프에 대해?

  2. 2

    자바의 각 루프에 대해

  3. 3

    열의 각 루프에 대해

  4. 4

    XSLT의 각 루프에 대해

  5. 5

    PHP의 각 루프에 대해

  6. 6

    Android의 각 루프에 대해 List의 각 객체 수정

  7. 7

    각 루프 NullReferenceException에 대해

  8. 8

    VB.net의 각 루프에 대해 조건문에 멈춤

  9. 9

    루프의 각 항목에 대해 배열에 추가

  10. 10

    for 루프의 각 루프에 대해 새 변수 이름을 만듭니다.

  11. 11

    널리스트의 각 루프에 대해

  12. 12

    보호 된 문자열 함수의 각 루프에 대해

  13. 13

    반복기 메서드의 각 루프에 대해

  14. 14

    피벗 테이블의 각 루프에 대해 최적화

  15. 15

    Meter의 각 루프에 대해 내부 변수 사용

  16. 16

    각 루프에 대해 두 개의 열을 빼는 cakephp 코드

  17. 17

    범위 오류 #VALUE의 각 루프에 대해 Excel VBA

  18. 18

    vba의 각 루프에 대한 응축

  19. 19

    PHP의 두 날짜, 날짜 사이의 각 루프에 대해 반대로?

  20. 20

    Google 스프레드 시트의 각 루프에 대해? 예를 들어 VBA

  21. 21

    knitr의 루프에 의해 생성 된 각 차트에 대한 제목 추가

  22. 22

    PHP에서 두 개의 배열 값을 실행하는 각 루프에 대해

  23. 23

    컨트롤러의 각 루프에 대해 객체에 데이터 추가

  24. 24

    각 루프 목록보기에 대해

  25. 25

    값의 각 ID에 대해

  26. 26

    Postgresql, 테이블 루프의 각 사용자 ID에 대해 x 번 삽입

  27. 27

    Strink 토크 나이저 XSLT 1.0 문자열의 각 단어에 대해 루프

  28. 28

    템플릿 요리사의 각 루프에 대해 실행하는 방법

  29. 29

    각 루프에 대해 PHP로 하나의 레코드 만 게시

뜨겁다태그

보관