码迷,mamicode.com
首页 > 数据库 > 详细

Laravel 实时监听打印 SQL

时间:2019-07-10 20:11:29      阅读:174      评论:0      收藏:0      [点我收藏+]

标签:sql   public   env   bindings   laravel   query   %s   provider   rod   

创建监听器

php artisan make:listener QueryListener --event=Illuminate\\Database\\Events\\QueryExecuted

打开 app/Providers/EventServiceProvider.php ,在 $listen 中添加

protected $listen = [
    ‘Illuminate\Database\Events\QueryExecuted‘ => [
        ‘App\Listeners\QueryListener,
    ]
];

  打开 QueryListener 文件

use \Log;
public function handle (QueryExecuted $event)
{
    if (env(‘APP_ENV‘, ‘production‘) == ‘local‘) {
        $sql = str_replace("?", "‘%s‘", $event->sql);
        $log = vsprintf($sql, $event->bindings);
        Log::info($log);
    }
}

  

Laravel 实时监听打印 SQL

标签:sql   public   env   bindings   laravel   query   %s   provider   rod   

原文地址:https://www.cnblogs.com/gentlemanwuyu/p/11166139.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!