laravle框架查看最近一次执行的sql

1.引入DB

use Illuminate\Support\Facades\DB;

2.代码部分

DB::connection()->enableQueryLog();
$query = SystemConfig::Where('application_item', $where['application_item'])
    ->where(function($query) use ($keywords) {
        $query->orwhere('config_item', 'like', "%{$keywords}%")
            ->orwhere('description', 'like', "%{$keywords}%");
    })->orderBy('config_item', 'asc')->paginate()->toArray();//需要执行的SQL语句
echo '<pre>';
print_r(DB::getQueryLog());exit;

3.输出结果

Array
(
    [0] => Array
        (
            [query] => select count(*) as aggregate from `system_config` where `application_item` = ? and (`config_item` like ? or `description` like ?)
            [bindings] => Array
                (
                    [0] => bms
                    [1] => %xc_report应用的数据库名%
                    [2] => %xc_report应用的数据库名%
                )

            [time] => 4.78
        )

    [1] => Array
        (
            [query] => select * from `system_config` where `application_item` = ? and (`config_item` like ? or `description` like ?) order by `config_item` asc limit 15 offset 0
            [bindings] => Array
                (
                    [0] => bms
                    [1] => %xc_report应用的数据库名%
                    [2] => %xc_report应用的数据库名%
                )

            [time] => 4.43
        )

)

4.参数解释

【query】为执行的SQL语句;?占位符,表示参数值,对应bindings中的值

猜你喜欢

转载自blog.csdn.net/yu_20170610/article/details/86245922