Print query in laravel

Updated at 13-Mar-2021, By samar

Print query in laravel

Good day, guys. In this post, we’ll look at how to solve the "Print query in laravel" programming puzzle.

  • --PATH app\Http\Controllers\<YourController.php>
    $users = User::where('id', '=', 1)->dd();
    // or
    $users = DB::table('users')->where('id', '=', 1)->dd();
    
    DD method is used to print query in laravel. DD stands for the die and dump which is a built-in function used in laravel. DD method prints query information and then stops executing the script.
  • --PATH app\Http\Controllers\<YourController.php>
    $users = User::where('id', '=', 1)->toSql();
    dd($users);
    
    toSql() method gets the raw sql query. This method is good for quickly seeing the SQL query but It doesn't include the query bindings. You have to use the dd() method after toSql() to print the query in your controller file.
  • --PATH app\Http\Controllers\<YourController.php>
    $users = User::where('id', '=', 1)->dump();
    // or
    $users = DB::table('users')->where('id', '=', 1)->dump();
    
    Dump() method will print the query information but it does not stop the execution of the script.
  • --PATH app\Http\Controllers\<YourController.php>
    DB::enableQueryLog(); // Enable query log
    $employees = Employee::get();
    $employeeDetails = EmployeeDetail::get();
    dd(DB::getQueryLog()); // Show results of log
    
    DB::enableQueryLog(); and dd(DB::getQueryLog()); are the methods which are used to print queries in laravel. You can enable query log using DB::enableQueryLog(); and after that you can get all queries logs using DB::getQueryLog() method. It will display all queries logs which are used after DB::enableQueryLog(); and before dd(DB::getQueryLog()) method. It also displays query bindings. You have to change the model name as per your requirements.
  • --PATH app\Http\Controllers\<YourController.php>
    DB::connection()->enableQueryLog();
    $employeeDetail = EmployeeDetail::all();
    echo '<pre>';
    print_r(DB::getQueryLog());
    die;
    

Back to code snippet queries related laravel