Mysql
 sql >> Base de Dados >  >> RDS >> Mysql

Despejando consultas SQL na tela em Laravel


Sim, você pode usar este código:
Event::listen(
    'illuminate.query',
    function ($sql, $bindings, $time) {
        $sql = str_replace(array('%', '?'), array('%%', "'%s'"), $sql);
        $full_sql = vsprintf($sql, $bindings);

        file_put_contents(storage_path() . DIRECTORY_SEPARATOR . 'logs'
            . DIRECTORY_SEPARATOR . 'sql_log.sql', $full_sql . ";\n",
            FILE_APPEND);
    }
);

No meu eu salvo a saída em um arquivo no ambiente local, você pode, é claro, exibir essa consulta na tela.