扫码关注官方订阅号
請問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百度安装这个包 就能查看了
微信扫码关注PHP中文网服务号
QQ扫码加入技术交流群
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号
PHP学习
技术支持
返回顶部
建议安装一个debugbar包,也可以直接实现,我写过一篇文章,可以看一下laravel 5.* 打印最后一次执行的sql|一沙网
添加一个ServiceProvider,打印一下日志就可以
laravel debugbar
百度安装这个包 就能查看了