Laravel5打印所有运行SQL

Posted 路漫漫其修远兮

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Laravel5打印所有运行SQL相关的知识,希望对你有一定的参考价值。

//function //laravel 官方打印sql
    public static function printAllSql(){
        DB::listen(function($query) {
            $sql_arr = [];
            $bindings = $query->bindings;
            $sql = $query->sql;
            foreach ($bindings as $replace){
                $value = is_numeric($replace) ? $replace : "\'".$replace."\'";
                $sql = preg_replace(\'/\\?/\', $value, $sql, 1);
            }
            $sql_arr[] = $sql;
            print_r($sql_arr);
        });
    }


//调用方式:直接在请求流的最上面调用方法即可
printAllSql();

 

以上是关于Laravel5打印所有运行SQL的主要内容,如果未能解决你的问题,请参考以下文章

在 laravel 5.1 中打印所有正在运行的会话变量

laravel5.5学习2-路由系统

缺少 SQL SERVER 2014 代码片段

Laravel5.1 数据库--DB运行原生SQL

argparse 代码片段只打印部分日志

SQL 过程 - 啥都没有打印出来