Benutzer-Werkzeuge

Webseiten-Werkzeuge


codeschnipsel:laravel-5

Laravel 5 Codeschnipsel

MySQL Queries debuggen / loggen

Hier bietet Laravel 2 Möglichkeiten. In der ersten Variante kann man sich den letzten Query ausgeben lassen:

// enable query logging
\DB::enableQueryLog();
 
// run a query
User::find(5);
 
// get the last query
print_r(\DB::getQueryLog());

Möchte man jeden Query loggen, erstellt man am einfachsten einen ServiceProvider:

<?php
 
namespace App\Providers;
 
use DB;
use Illuminate\Support\ServiceProvider;
 
class AppServiceProvider extends ServiceProvider
{
    /**
     * Bootstrap any application services.
     *
     * @return void
     */
    public function boot()
    {
        DB::listen(function($sql, $bindings, $time) {
            //  $sql - select * from `users` where `users`.`id` = ? limit 1
            //  $bindings - [5]
            //  $time(in milliseconds) - 0.38 
        });
    }
 
    /**
     * Register the service provider.
     *
     * @return void
     */
    public function register()
    {
        //
    }
}
codeschnipsel/laravel-5.txt · Zuletzt geändert: 23.09.2015 21:35 von Tino