数据库事件
数据库类包含一些 事件,您可以利用这些事件来了解数据库执行过程中的更多信息。这些事件可用于收集数据以进行分析和报告。 调试工具栏 使用此功能来收集查询以在工具栏中显示。
事件
DBQuery
每当运行一个新的查询时,无论成功与否,都会触发此事件。唯一的参数是当前查询的 Query 实例。您可以使用它将所有查询显示在 STDOUT 中,或将其记录到文件中,甚至创建工具来进行自动查询分析,以帮助您发现可能缺少的索引、慢速查询等。
一个示例用法可能是
<?php
// In app/Config/Events.php
namespace Config;
use CodeIgniter\Events\Events;
use CodeIgniter\Exceptions\FrameworkException;
use CodeIgniter\HotReloader\HotReloader;
// ...
Events::on(
'DBQuery',
static function (\CodeIgniter\Database\Query $query) {
log_message('info', (string) $query);
}
);