84669 人學習
152542 人學習
20005 人學習
5487 人學習
7821 人學習
359900 人學習
3350 人學習
180660 人學習
48569 人學習
18603 人學習
40936 人學習
1549 人學習
1183 人學習
32909 人學習
請問laravel 5.3 如何查詢上一次執行的SQL語句?
建议安装一个debugbar包,也可以直接实现,我写过一篇文章,可以看一下laravel 5.* 打印最后一次执行的sql|一沙网
添加一个ServiceProvider,打印一下日志就可以
<?php namespace App\Providers; use DB; use Illuminate\Database\Events\QueryExecuted; use Illuminate\Support\ServiceProvider; use Log; class AppServiceProvider extends ServiceProvider { /** * Register any application services. * * @return void */ public function register() { } /** * @param $needle * @param $replace * @param $haystack * @return mixed */ private function str_replace_once($needle, $replace, $haystack) { $pos = strpos($haystack, $needle); if ($pos === false) { return $haystack; } return substr_replace($haystack, $replace, $pos, strlen($needle)); } public function boot() { DB::listen(function (QueryExecuted $query) { if ($query->bindings) { $sql = $query->sql; foreach ($query->bindings as $val) { if (is_string($val)) { $val = "\"" . strval($val) . "\""; } $sql = $this->str_replace_once("?", $val, $sql); } Log::debug($sql, $query->bindings); } else { Log::debug($query->sql, $query->bindings); } }); } }
laravel debugbar百度安装这个包 就能查看了
建议安装一个debugbar包,也可以直接实现,我写过一篇文章,可以看一下laravel 5.* 打印最后一次执行的sql|一沙网
添加一个ServiceProvider,打印一下日志就可以
laravel debugbar
百度安装这个包 就能查看了