增加一個(gè)helper函數(shù)
if ( ! function_exists('sql_dump')) {
function sql_dump()
{
\DB::listen(function ($sql) {
$i = 0;
$bindings = $sql->bindings;
$rawSql = preg_replace_callback('/\&;/', function ($matches) use ($bindings, $i) {
$item = isset($bindings[$i]) ? $bindings[$i] : $matches[0];
$i++;
return gettype($item) == 'string' ? "'$item'" : $item;
}, $sql->sql);
echo $rawSql, "\nbr />br />\n";
});
}
}
在需要開(kāi)始監(jiān)聽(tīng)數(shù)據(jù)庫(kù)訪問(wèn)的位置添加代碼
DB::connection()->enableQueryLog(); // 打開(kāi)query log
sql_dump();
sql語(yǔ)句會(huì)被打印到標(biāo)準(zhǔn)輸出。
以上這篇Laravel監(jiān)聽(tīng)數(shù)據(jù)庫(kù)訪問(wèn),打印SQL的例子就是小編分享給大家的全部?jī)?nèi)容了,希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。
您可能感興趣的文章:- Laravel5.1數(shù)據(jù)庫(kù)連接、創(chuàng)建數(shù)據(jù)庫(kù)、創(chuàng)建model及創(chuàng)建控制器的方法
- Laravel5.5 數(shù)據(jù)庫(kù)遷移:創(chuàng)建表與修改表示例
- Laravel5.7 數(shù)據(jù)庫(kù)操作遷移的實(shí)現(xiàn)方法
- 在Laravel5.6中使用Swoole的協(xié)程數(shù)據(jù)庫(kù)查詢(xún)
- Laravel框架DB facade數(shù)據(jù)庫(kù)操作詳解
- Laravel框架使用monolog_mysql實(shí)現(xiàn)將系統(tǒng)日志信息保存到mysql數(shù)據(jù)庫(kù)的方法
- PHP的Laravel框架結(jié)合MySQL與Redis數(shù)據(jù)庫(kù)的使用部署
- Laravel框架數(shù)據(jù)庫(kù)CURD操作、連貫操作總結(jié)
- PHP開(kāi)發(fā)框架Laravel數(shù)據(jù)庫(kù)操作方法總結(jié)
- Laravel如何同時(shí)連接多個(gè)數(shù)據(jù)庫(kù)詳解
- Laravel5.1 框架數(shù)據(jù)庫(kù)操作DB運(yùn)行原生SQL的方法分析