作者 邓超

bbbbb

... ... @@ -33,7 +33,7 @@ class CustomController extends BaseController
$name = request()->get('name');
$map = [];
if($name){
$map[] = ['name','like',htmlspecialchars($name)];
$map[] = ['name','like','%'.htmlspecialchars($name).'%'];
}
$lists = CustomLogic::instance()->getList(
... ...
<?php
namespace App\Listeners;
use Illuminate\Contracts\Queue\ShouldQueue;
use Illuminate\Database\Events\QueryExecuted;
use Illuminate\Queue\InteractsWithQueue;
use Illuminate\Support\Facades\Log;
use Illuminate\Support\Facades\Redis;
/**
* 监听数据库sql执行事件
*/
class QueryListener
{
/**
* Create the event listener.
*
* @return void
*/
public function __construct()
{
//
}
/**
* Handle the event.
*
* @param QueryExecuted $event
* @return void
*/
public function handle(QueryExecuted $event)
{
try{
if (env('APP_DEBUG') == true) {
$sql = str_replace("?", "'%s'", $event->sql);
foreach ($event->bindings as $i => $binding) {
if ($binding instanceof \DateTime) {
$event->bindings[$i] = $binding->format('\'Y-m-d H:i:s\'');
} else {
if (is_string($binding)) {
$event->bindings[$i] = "$binding";
}
}
}
$log = vsprintf($sql, $event->bindings);
$log = $log.' [ RunTime:'.$event->time.'ms ] ';
Log::debug($log);
}
}catch (\Exception $exception){
Log::error('log sql error:'.$exception->getMessage());
}
}
}
... ...
... ... @@ -18,6 +18,10 @@ class EventServiceProvider extends ServiceProvider
Registered::class => [
SendEmailVerificationNotification::class,
],
// 监听sql查询事件
'Illuminate\Database\Events\QueryExecuted' => [
'App\Listeners\QueryListener',
],
];
/**
... ...