Некоторое время назад закоммитил (надеюсь) полезные правки для модуля Debug Toolbar. Они активно используются на моей работе, и вероятно будут полезны вам.
Просмотр конфигурационных файлов
Иногда бывает полезно узнать, что хранится в конфигурационных файлах, особенно с учетом каскадной файловой системы, когда может параллельно сосуществовать несколько конфигов с одним именем. Для этого в Toolbar добавлен таб configs
:
Таб расположен в панели переменных (vars
), и активируется в конфиге модуля:
$config['panels'] = array( 'benchmarks' => TRUE, 'database' => TRUE, 'vars' => TRUE, 'configs' => TRUE, // also depends on 'vars' values ); |
Таб появится, если включена панель vars
и разрешен показ конфигов. По умолчанию все — TRUE. Дополнительная опция — какие конфиги исключать. По умолчанию показываются все конфиги, кроме database
и encrypt
:
/** * Exclude configs */ $config['skip_configs'] = array('database', 'encrypt'); |
Добавление произвольных панелей
Еще одна интересная возможность — добавляйте собственные панели данных. Главное отличие от панели customs — создается отдельная панель-хранилище для каждого обращения, причем генерация содержимого может быть отложенной.
В данном примере панель foo была создана очень просто:
DebugToolbar::add_section('foo', function() {return array('bar', 'baz');}); |
В методе add_section()
всего три параметра, но последний из них не используется (в будущем планирую использовать его для указания иконки панели). Первый параметр — заголовок панели, второй — сами данные для панели. Они могут быть как строчными, так и callback‘ами. Очень удобно данный метод использовать для рендеринга различного рода отладочных данных, по аналогии с данными панели database
или routes
. Причем создавать секцию можно где-нибудь в bootstrap.php
, а отображение пойдет только при рендеринге самого тулбара, то есть обычно в конце выполнения запроса.
Изменения залиты в ветки 3.3 и 3.2.
Иван, добрый день. Не могли бы вы добавить composer.json в репозиторий модуля на гитхабе и добавить его в https://packagist.org, что бы была возможность устанавливать его через composer.