nfaiz / dbtoolbar
CodeIgniter 4 数据库调试工具栏查询高亮器。
v1.0.1
2024-04-22 05:53 UTC
Requires
- codeigniter4/framework: ^4.1.7
- scrivo/highlight.php: ^9.18
README
查询高亮器
描述
CodeIgniter 4 数据库调试工具栏查询高亮器。
目录
需求
安装
通过 composer 安装库
composer require nfaiz/dbtoolbar
查询高亮器位于 DbQueries 选项卡(调试工具栏)中
配置
删除默认数据库选项卡
- 打开
app/Config/Toolbar.php
,并从$collectors
属性中注释掉Database::class
。
public array $collectors = [ // Database::class, ];
- 打开
app/Config/Events.php
,并注释掉Events::on('DBQuery', 'CodeIgniter\Debug\Toolbar\Collectors\Database::collect');
。
if (CI_DEBUG && ! is_cli()) { // Events::on('DBQuery', 'CodeIgniter\Debug\Toolbar\Collectors\Database::collect'); Services::toolbar()->respond(); }
修改设置。
打开 app/Config/Toolbar.php
,并按照相应添加以下属性。
/** * ------------------------------------------------------------- * Disable DbToolbar query Highlighter * ------------------------------------------------------------- * * To disable DbToolbar query highlighter, change value to true * * @var bool */ public bool $dbToolbarDisable = false; /** * ------------------------------------------------------------- * DbToolbar Theme * ------------------------------------------------------------- * * Configuration for light and dark mode SQL Syntax Highlighter. * Refer https://github.com/scrivo/highlight.php/tree/master/src/Highlight/styles or * use \HighlightUtilities\getAvailableStyleSheets(); for available stylesheets. * * @var array */ public array $dbToolbarTheme = [ 'light' => 'atom-one-light', 'dark' => 'atom-one-dark' ]; /** * ------------------------------------------------------------- * DbToolbar View * ------------------------------------------------------------- * * To override DbToolbar SQL Syntax Highlighter view. * * @var array */ public string $dbToolbarTpl = 'Nfaiz\DbToolbar\Views\database.tpl'; /** * ------------------------------------------------------------- * Bottom Margin Between Diplayed Query in Toolbar * ------------------------------------------------------------- * * Value in px * * @var int */ public int $dbToolbarMarginBottom = 4; /** * ------------------------------------------------------------- * Log Queries * ------------------------------------------------------------- * * Please set threshold to minimum 7 at app/Config/Logger.php * Logs can be found at ROOTPATH/writable/logs * * @var boolean */ public bool $dbToolbarLogger = false;
自定义语法高亮视图。
打开 app/Config/Toolbar.php
,并使用 $dbToolbarTpl
属性添加/编辑模板视图文件。
您可以创建自己的视图并相应地更改它。例如 public $dbToolbarTpl = dbtoolbar/database;
Views/dbtoolbar/database.php。
{! hlstyle !} <table> <thead> <tr> <th class="debug-bar-width6r">Time</th> <th>Query String</th> </tr> </thead> <tbody> {queries} <tr class="{class}" title="{hover}" data-toggle="{qid}-trace"> <td class="narrow" style="vertical-align: top;">{duration}</td> <td><u>{trace-file}</u>{! sql !}</td> </tr> <tr class="muted debug-bar-ndisplay" id="{qid}-trace"> <td></td> <td> {trace} {index}<strong>{file}</strong><br/> {function}<br/><br/> {/trace} </td> </tr> {/queries} </tbody> </table>
屏幕截图
默认数据库工具栏
- 浅色
- 深色
使用 DbToolbar
- 浅色
- 深色
致谢
- 受此 pull request 启发