How to Get Last Executed Query in Laravel 8?
This simple article demonstrates of get sql query in laravel 8. step by step explain laravel 8 print last sql query. I’m going to show you about laravel 8 eloquent print last query. let’s discuss about laravel 8 last executed query. let's see here laravel 8 get last executed query.
I will print last sql query in laravel 8 using toSql(), DB::enableQueryLog() and DB::getQueryLog(). i will also show you output of print sql query.
So, let's see examples bellow and use as you want any one.
Example 1:
Controller Code:
<?php
namespace App\Http\Controllers;
use App\Models\User;
class UserController extends Controller
{
/**
* Create a new controller instance.
*
* @return void
*/
public function redirectToGoogle()
{
$query = User::select("*")->toSql();
dd($query);
}
}
Output:
select * from `users`
Example 2:
Controller Code:
<?php
namespace App\Http\Controllers;
use App\Models\User;
use DB;
class UserController extends Controller
{
/**
* Create a new controller instance.
*
* @return void
*/
public function redirectToGoogle()
{
DB::enableQueryLog();
$users = User::select("*")->get();
$quries = DB::getQueryLog();
dd($quries);
}
}
Output:
array:1 [▼
0 => array:3 [▼
"query" => "select * from `users`"
"bindings" => []
"time" => 4.25
]
]
Example 3:
Controller Code:
<?php
namespace App\Http\Controllers;
use App\Models\User;
use DB;
class UserController extends Controller
{
/**
* Create a new controller instance.
*
* @return void
*/
public function redirectToGoogle()
{
DB::enableQueryLog();
$users = User::select("*")->get();
$query = DB::getQueryLog();
$query = end($query);
dd($query);
}
}
Output:
array:3 [▼
"query" => "select * from `users`"
"bindings" => []
"time" => 2.07
]
I hope it can help you...