yiisoft/yii2-debug

The debugger extension for the Yii framework

Package info

github.com/yiisoft/yii2-debug

Forum

Wiki

Type:yii2-extension

pkg:composer/yiisoft/yii2-debug

Fund package maintenance!

Open Collective

yiisoft

Tidelift

Statistics

Installs: 24 404 830

Dependents: 884

Suggesters: 1

Stars: 202

Open Issues: 43

2.1.28 2026-04-22 10:35 UTC

Requires

Suggests

None

Provides

None

Conflicts

None

Replaces

None

BSD-3-Clause 0a2ce3cb91d36d5558c7189d9012795874e1ee60

  • Qiang Xue <qiang.xue.woop@gmail.com>
  • Simon Karlen <simi.albi.woop@outlook.com>

debugdebuggerdevyii2


README

👁 Yii Framework

Debug Extension for Yii 2


This extension provides a debugger for Yii framework 2.0 applications. When this extension is used, a debugger toolbar will appear at the bottom of every page. The extension also provides a set of standalone pages to display more detailed debug information.

👁 Latest Stable Version
👁 Total Downloads
👁 build
👁 codecov
👁 Static Analysis

Installation

Important

  • The minimum required PHP version is PHP 7.4.
  • It works best with PHP 8.

The preferred way to install this extension is through composer.

Either run

php composer.phar require --prefer-dist yiisoft/yii2-debug

or add

"yiisoft/yii2-debug": "~2.1.0"

to the require section of your composer.json file.

Usage

Once the extension is installed, simply modify your application configuration as follows:

return [
 'bootstrap' => ['debug'],
 'modules' => [
 'debug' => [
 'class' => 'yii\debug\Module',
 // uncomment and adjust the following to add your IP if you are not connecting from localhost.
 //'allowedIPs' => ['127.0.0.1', '::1'],
 ],
 // ...
 ],
 ...
];

You will see a debugger toolbar showing at the bottom of every page of your application. You can click on the toolbar to see more detailed debug information.

Open Files in IDE

You can create a link to open files in your favorite IDE with this configuration:

return [
 'bootstrap' => ['debug'],
 'modules' => [
 'debug' => [
 'class' => 'yii\debug\Module',
 'traceLine' => '<a href="phpstorm://open?url={file}&line={line}">{file}:{line}</a>',
 // uncomment and adjust the following to add your IP if you are not connecting from localhost.
 //'allowedIPs' => ['127.0.0.1', '::1'],
 ],
 // ...
 ],
 ...
];

You must make some changes to your OS. See these examples:

Virtualized or dockerized

If your application is run under a virtualized or dockerized environment, it is often the case that the application's base path is different inside of the virtual machine or container than on your host machine. For the links work in those situations, you can configure tracePathMappings like this (change the path to your app):

'tracePathMappings' => [
 '/app' => '/path/to/your/app',
],

Or you can create a callback for traceLine for even more control:

'traceLine' => function($options, $panel) {
 $filePath = $options['file'];
 if (StringHelper::startsWith($filePath, Yii::$app->basePath)) {
 $filePath = '/path/to/your/app' . substr($filePath, strlen(Yii::$app->basePath));
 }
 return strtr('<a href="ide://open?url=file://{file}&line={line}">{text}</a>', ['{file}' => $filePath]);
},

Documentation

Support the project

👁 Open Collective

Follow updates

👁 Official website
👁 Follow on X
👁 Telegram
👁 Slack

License

👁 License