kerasai / console-command-loader
该包最新版本(0.0.1)没有提供许可证信息。
将容器中的服务作为控制台命令加载到Symfony中。
0.0.1
2020-04-21 00:39 UTC
Requires
- symfony/console: ^4.4
- symfony/dependency-injection: ^4.4
Requires (Dev)
- consolidation/robo: ~1
- drupal/coder: ^8.3
- kerasai/robo-phpcs: ^0.0.4
This package is auto-updated.
Last update: 2024-09-21 21:16:53 UTC
README
该包为在Symfony控制台应用中使用标记为命令的服务添加了功能。
使用方法
将“console.command”标签设置到服务上,并添加“command”值。
services: command.compute: class: \Kerasai\MyApp\Command\MyCommand public: true tags: - { name: 'console.command', command: 'my-command' }
然后在启动控制台应用的代码中,创建服务容器并设置命令加载器。
<?php use Kerasai\ConsoleCommandLoader\TaggedCommandLoader; use Symfony\Component\Config\FileLocator; use Symfony\Component\DependencyInjection\ContainerBuilder; use Symfony\Component\DependencyInjection\Loader\YamlFileLoader; $containerBuilder = new ContainerBuilder(); $loader = new YamlFileLoader($containerBuilder, new FileLocator(__DIR__)); $loader->load('services.yml'); $commandLoader = new TaggedCommandLoader($containerBuilder); $app->setCommandLoader($commandLoader); $app->run();