loburets/laravel-query-printer

An easy way to print queries and query logs in Laravel

v0.1.2 2021-08-24 11:14 UTC

This package is auto-updated.

Last update: 2025-07-06 17:05:47 UTC


README

An easy way to print Laravel queries

📌 Example

// Enable query log
\DB::enableQueryLog();

// Use whatever queries you want to debug:
User::where('email', 'test@test.com')->where('verified', true)->first();
User::where('id', '<', '5')->get();

// See what the queries were executed
\QueryPrinter::printQueryLog();

🔹 Output without this package:

Without Package

🔹 Output with this package:

With Package

Now you can simply copy and execute the query without struggling with bindings 🙌

🚀 Installation

composer require loburets/laravel-query-printer

For Laravel < 5.5, add the alias in config/app.php:

'QueryPrinter' => Loburets\LaravelQueryPrinter\Facade::class,

🛠️ Usage

✅ Printing a Query Builder instance

You can print a query before execution:

    // Build your query, but don't call ->first(), ->get() etc. So it is an instance of the Query Builder here:
    $query = \Model::where()->join()->etc();

    // Print the generated SQL
    \QueryPrinter::print($query);

✅ Printing executed queries from query logs

You can also print queries after they have been executed:

    // Enable the Query log:
    \DB::enableQueryLog();

    // Do any actions which you want to be logged:
    $results = \Model::where()->join()->etc()->get();

    // Print all the executed queries
    \QueryPrinter::printQueryLog();

Now debugging Laravel queries is easier than ever! 🎯