모델의 Laravel 원시 DB 쿼리에서 매개변수 바인딩
모델에서 Laravel의 원시 DB 쿼리로 작업할 때 매개변수 바인딩이 어려울 수 있습니다. . 이 문제는 명명된 매개변수와 위치 매개변수의 조합을 사용할 때 발생하며 "잘못된 매개변수 번호: 명명된 매개변수와 위치 매개변수가 혼합되어 있습니다"라는 오류가 발생합니다.
이 문제를 해결하려면 다음 해결 방법을 고려하세요.
$property = Property::select( DB::raw("title, lat, lng, ( 3959 * acos( cos( radians( ? ) ) * cos( radians( lat ) ) * cos( radians( lng ) - radians(?) ) + sin( radians( ? ) ) * sin( radians( lat ) ) ) ) AS distance") ) ->having("distance", "<", "?") ->orderBy("distance") ->take(20) ->setBindings([$lat, $lng, $lat, $radius]) ->get();
setBindings() 메서드를 활용하면 매개변수 값을 바인딩할 수 있습니다. 매개변수화가 필요한 원시 DB 쿼리를 실행할 수 있습니다.
위 내용은 모델의 Laravel Raw DB 쿼리에서 바인딩 매개변수를 처리하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!