smcrow / binding-utilities
1.2.2
2017-11-05 15:19 UTC
Requires
- php: >=7.0.2
- laravel/framework: ~5.0
- symfony/finder: ^3.3
Requires (Dev)
- mockery/mockery: ^0.9.9
- phpunit/phpunit: ^6.2
- squizlabs/php_codesniffer: ^3.1
This package is not auto-updated.
Last update: 2022-02-01 13:08:54 UTC
README
这是一套Artisan自定义命令工具,用于获取IoC容器信息。以下命令被添加:
绑定操作
binding:list- 列出注册的绑定,显示将被注入的抽象(接口)类和具体类。--include-illuminate- 指示应包含Illuminate类。默认情况下不包含。
binding:usage- 列出注册的绑定以及它们引用的文件。默认情况下将排除node_modules和vendor。--include-illuminate- 指示应包含Illuminate类。默认情况下不包含。--include-vendor- 指示应包含供应商目录。默认情况下不包含。--exclude=- 用逗号分隔的字符串,指示要排除的目录。--sort- 指示应对信息进行排序。
服务提供者操作
provider:list- 列出注册的服务提供者。--include-illuminate- 指示应包含Illuminate类。默认情况下不包含。--sort- 指示应对信息进行排序。
使用方法
通过Composer安装
composer require smcrow/laravel-container-info --dev
注册命令
Laravel 5.5
Laravel 5.5允许自动发现服务提供者。ContainerInformationProvider将被自动发现。
Laravel 5.5之前
您需要注册此命令才能使用它。修改AppServiceProvider中的register方法,这将添加本地环境的提供者。
public function register() { if ($this->app->environment() === 'local') { $this->app->register(ContainerInformationProvider::class); } }
示例用法
php artisan binding:list
以下是来自我的LeaseTracker应用程序的binding:list命令的示例输出。
+-----------------------------------------------------------------+--------------------------------------------------------------+
| Abstract | Concrete |
+-----------------------------------------------------------------+--------------------------------------------------------------+
| Illuminate\Contracts\Http\Kernel | LeaseTracker\Http\Kernel |
| Illuminate\Contracts\Console\Kernel | LeaseTracker\Console\Kernel |
| Illuminate\Contracts\Debug\ExceptionHandler | LeaseTracker\Exceptions\Handler |
| Illuminate\Session\Middleware\StartSession | Illuminate\Session\Middleware\StartSession |
| LeaseTracker\Services\Vehicle\VehicleServiceInterface | LeaseTracker\Services\Vehicle\VehicleService |
| LeaseTracker\Services\Mileage\MileageServiceInterface | LeaseTracker\Services\Mileage\MileageService |
| LeaseTracker\Services\Calculation\CalculationServiceInterface | LeaseTracker\Services\Calculation\CalculationService |
| LeaseTracker\Services\VehicleImage\VehicleImageServiceInterface | LeaseTracker\Services\VehicleImage\GoogleVehicleImageService |
| LeaseTracker\Repositories\VehicleRepositoryInterface | LeaseTracker\Repositories\VehicleRepository |
| LeaseTracker\Repositories\MileEntryRepositoryInterface | LeaseTracker\Repositories\MileEntryRepository |
| Illuminate\Console\Scheduling\ScheduleFinishCommand | Illuminate\Console\Scheduling\ScheduleFinishCommand |
| Illuminate\Console\Scheduling\ScheduleRunCommand | Illuminate\Console\Scheduling\ScheduleRunCommand |
| Illuminate\Contracts\Pipeline\Hub | Illuminate\Pipeline\Hub |
+-----------------------------------------------------------------+--------------------------------------------------------------+
php artisan provider:list
以下是来自一个虚拟应用程序的示例输出。
+-----------------------------------------------------------------------------+----------+----------------+
| Providers | Deferred | Provides |
+-----------------------------------------------------------------------------+----------+----------------+
| Fideloper\Proxy\TrustedProxyServiceProvider | | |
| Smcrow\ContainerInformation\BindingInformation\BindingInformationProvider | | |
| Smcrow\ContainerInformation\ProviderInformation\ProviderInformationProvider | | |
| Smcrow\ContainerInformation\ContainerInformationProvider | | |
| App\Providers\AppServiceProvider | | |
| App\Providers\AuthServiceProvider | | |
| App\Providers\EventServiceProvider | | |
| App\Providers\RouteServiceProvider | | |
| Laravel\Tinker\TinkerServiceProvider | true | command.tinker |
+-----------------------------------------------------------------------------+----------+----------------+
反馈和贡献
请随时通过提交问题来提供建议。或者,提交一个带有您希望添加的功能的拉取请求。这是一个正在进行中的项目,我欢迎任何和所有的反馈。