xtreamwayz / expressive-console
此包已被放弃且不再维护。未建议替代包。
Mezzio 的 Symfony Console
1.4.0
2021-12-09 19:05 UTC
Requires
- php: ^7.4 || ^8.0
- psr/container: ^1.0 || ^2.0
- symfony/console: ^5.0 || ^6.0
Requires (Dev)
- laminas/laminas-coding-standard: ^2.3.0
- phpspec/prophecy-phpunit: ^2.0.1
- phpstan/phpstan: ^1.2.0
- phpunit/phpunit: ^9.5.10
This package is auto-updated.
Last update: 2024-06-19 11:24:48 UTC
README
非常感谢您对这个项目的关注!开源是有回报的,但也可以很累人。因此,此代码以现状提供,目前没有积极维护。我们邀请您查阅代码,甚至可以在您的下一个项目中使用它,前提是您遵守所包含的许可证!
不提供对代码的支持保证,也不承诺将审查或合并拉取请求。它是开源的,因此允许分叉;只需确保给予应有的信用!
Mezzio 的 Symfony Console
此包将 Symfony Console 带到您的 Mezzio 项目中。它使用 FactoryCommandLoader
进行依赖项的懒加载。FactoryCommandLoader
做得很好:它只加载所需的单个命令。但是,如果没有请求任何命令,它仍然初始化所有命令以获取每个命令的描述。这可以通过使用 LazyLoadingCommand
来修复。通过一些反射和魔法,它从原始命令中获取配置,同时防止命令执行。这样,您将获得所有命令及其描述的列表。
安装
$ composer require xtreamwayz/mezzio-console
配置
<?php declare(strict_types=1); namespace App; return [ 'dependencies' => [ 'factories' => [ Console\MyCommand::class => Console\MyCommandFactory::class, Console\AnotherCommand::class => Console\AnotherCommandFactory::class, ], ], 'console' => [ 'commands' => [ 'my:command' => Console\MyCommand::class, 'another:command' => Console\AnotherCommand::class, ], ], ];
文档
所有项目文档位于 ./docs 文件夹中。如果您想为文档做出贡献,请提交拉取请求。您可以在网上阅读文档:https://xtreamwayz.github.io/mezzio-console/
贡献
在您开始工作于一个特性或修复之前,请阅读并遵循贡献指南,以帮助避免任何浪费或重复的努力。