Created
March 10, 2016 01:08
-
-
Save abcsun/5cf8df7fd90421a57b79 to your computer and use it in GitHub Desktop.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
DB::listen( | |
function ($sql) { | |
// $sql is an object with the properties: | |
// sql: The query | |
// bindings: the sql query variables | |
// time: The execution time for the query | |
// connectionName: The name of the connection | |
// To save the executed queries to file: | |
// Process the sql and the bindings: | |
foreach ($sql->bindings as $i => $binding) { | |
if ($binding instanceof \DateTime) { | |
$sql->bindings[$i] = $binding->format('\'Y-m-d H:i:s\''); | |
} else { | |
if (is_string($binding)) { | |
$sql->bindings[$i] = "'$binding'"; | |
} | |
} | |
} | |
// Insert bindings into query | |
$query = str_replace(array('%', '?'), array('%%', '%s'), $sql->sql); | |
$query = vsprintf($query, $sql->bindings); | |
// Save the query to file | |
$logFile = fopen( | |
storage_path('logs' . DIRECTORY_SEPARATOR . date('Y-m-d') . '_query.log'), | |
'a+' | |
); | |
fwrite($logFile, date('Y-m-d H:i:s') . ': ' . $query . PHP_EOL); | |
fclose($logFile); | |
} | |
); |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
DB::listen(function($sql, $bindings, $time) { | |
Log::info( 'SQL语句执行:'.$sql.',参数:'.json_encode($bindings).',耗时:'.$time.'ms'); | |
}); |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment