W jaki sposób uzyskuje się informacje o wychodzących parametrach przekazanych do surowego zapytania w Laravel 4? Spodziewałem się czegoś takiego DB::escape()
(który dzwoni dzwonek z laravel 3), a także próbę DB::quote()
(co myślałem, może być dostępna za pośrednictwem PDO object)Escape surowe kwerendy SQL w Laravel 4
$query = DB::select("SELECT * FROM users WHERE users.id = " . DB::escape($userId));
Nie możemy użyć metody Select zastępcze jak wyżej jest tylko uproszczonym przykładem tego, co próbujemy osiągnąć. Mamy duże niestandardowe zapytanie z kilkoma zagnieżdżonymi zapytaniami, które nie mogą zostać dostosowane do kreatora zapytań.
Jakie jest najlepsze podejście do ucieczki przed wstawieniem do Laravel 4?
EDIT:
Właśnie odkryłem, że można uzyskać dostęp do obiektu PDO i użyć funkcji ofertowe na to w ten sposób. Czy to nadal jest najlepsze podejście, czy też istnieje łatwiejszy sposób dostępu do tej funkcji?
DB::connection()->getPdo()->quote("string to quote");
Dzięki. +1 za uwzględnienie rozwiązania (mógłbyś również zamieścić go oddzielnie jako odpowiedź i zaakceptował to ... może zaoszczędzić trochę czasu dla nas) –
@ J.Bruni, dobra uwaga! Dodałem go również jako odpowiedź rzeczywistą, więc powinno być łatwiej znaleźć. – Dwight