anso / console
训练项目的控制台框架。
dev-master
2020-04-13 10:28 UTC
Requires
- php: ^7.4
- anso/base: *
- anso/contract: *
Requires (Dev)
- phpunit/phpunit: ^8
This package is auto-updated.
Last update: 2024-09-13 21:00:23 UTC
README
需求
PHP >= 7.4
安装
anso/console 可以通过 Composer 安装。
composer require anso/console:dev-master
使用
在实例化 Application 对象并调用 start() 方法之前,必须创建和放置一些配置文件在单个文件夹中
- exception_handler.php - 必须返回 ExceptionHandler 实例
- providers.php - 必须返回用于注册 DI 容器绑定的 Providers 数组
- commands.php - 必须返回 CommandCollection 实例。它包含以名称为键、字符串值为 Handler 的命令数组
之后,可以像这样启动应用程序 (/console.php)
<?php define('BASE_PATH', __DIR__); require __DIR__ . '/vendor/autoload.php'; use Anso\Framework\Base\Container; use Anso\Framework\Base\Configuration; use Anso\Framework\Console\ConsoleApp; use Anso\Framework\Base\Contract\Application; $configuration = new Configuration('/config/console'); $container = new Container($configuration); $app = new ConsoleApp($container, $configuration); $container->addResolved(Application::class, $app); $app->start();
- 需要 BASE_PATH 常量来包含配置文件并在以后从它们中提取值。
- 要启用自动加载,必须包含 composer 的 autoload.php。
- 然后必须创建 Configuration、Container 和 ConsoleApp 对象。确保您在提供者中或在创建 $app 对象之后将 Application、Container 和 Configuration 注册为单例。
- $app 对象应标记为已解析,以便如果以后需要它,不会创建配置错误的重复 app 对象。
- 最后,应用程序可以开始工作。