berry-beans / service-container-debugger
此包已被弃用,不再维护。未建议替代包。
从 Artisan 检查 Laravel IoC 容器。
dev-master
2015-06-27 17:24 UTC
Requires
- php: >=5.4.0
- illuminate/console: 5.1.*
- illuminate/container: 5.1.*
- illuminate/support: 5.0.*|5.1.*
- symfony/event-dispatcher: 2.7.*
Requires (Dev)
- mockery/mockery: ~0.9.1
- phpunit/phpunit: ~4.0
This package is not auto-updated.
Last update: 2015-09-03 00:14:22 UTC
README
容器调试命令可用于检查 Laravel 5 服务容器。它与 Symfony 框架中的 container:debug 类似。它将显示所有绑定、它们的类型、如果为标量则显示值,以及解析每个绑定所需的时间。
安装
将以下依赖添加到您的 Laravel 项目中
"berry-beans/service-container-debugger": "dev-master"
现在运行...
composer update
以下载包。现在将服务提供者添加到您的项目配置 config/app.php
。
'providers' => array(
'Illuminate\Foundation\Providers\ArtisanServiceProvider',
'Illuminate\Auth\AuthServiceProvider',
'Illuminate\Cache\CacheServiceProvider',
'Illuminate\Foundation\Providers\CommandCreatorServiceProvider',
--- more ---
'BerryBeans\ServiceContainerDebugger\ServiceContainerDebuggerServiceProvider',
),
现在您可以使用 Artisan CLI 工具执行命令。
使用方法
php artisan container:debug
您将看到类似于以下内容的输出。
+--------------------------+------------------------------------------------------------+----------------------+
| Identifier | Service | Resolution time (ms) |
+--------------------------+------------------------------------------------------------+----------------------+
| artisan | Illuminate\Console\Application | 0.011 |
| asset.publisher | Illuminate\Foundation\AssetPublisher | 0.020 |
| auth | Illuminate\Auth\AuthManager | 0.023 |
| auth.reminder | Unable to resolve service. | N/A |
| auth.reminder.repository | Unable to resolve service. | N/A |
| cache | Illuminate\Cache\CacheManager | 0.044 |
| command.asset.publish | Illuminate\Foundation\Console\AssetPublishCommand | 0.058 |
| command.auth.reminders | Illuminate\Auth\Console\MakeRemindersCommand | 0.029 |
| command.cache.clear | Illuminate\Cache\Console\ClearCommand | 0.023 |
| command.dump-autoload | Illuminate\Foundation\Console\AutoloadCommand | 0.022 |
| command.environment | Illuminate\Foundation\Console\EnvironmentCommand | 0.023 |
| command.key.generate | Illuminate\Foundation\Console\KeyGenerateCommand | 0.022 |
| env | <string> "production" | 0.017 |
| events | Illuminate\Events\Dispatcher | 0.018 |
| exception | Illuminate\Exception\Handler | 0.019 |
| exception.debug | Illuminate\Exception\WhoopsDisplayer | 0.018 |
+--------------------------+------------------------------------------------------------+----------------------+
第一列包含 IoC 容器中服务的标识符。
第二列包含有关服务的信息,根据其类型而定
- (标量值) 类型和价值。例如 "foo"
- (非标量值) 价值的类型。例如
- (对象) 对象的类名。例如 DateTime
如果在解析服务时抛出异常,则该列将显示 '无法解析服务'。
第三列显示从 IoC 容器解析服务所需的时间(以毫秒为单位)。
可能的用途
- 快速查找容器对象:php artisan container:debug | grep "mail"
- 找到哪些类由 Facades 表示容器对象。
- 通过研究容器对象的解析时间来诊断性能问题。
享受,并像往常一样,为仓库加星并告诉您的朋友!