gameplayjdk/slim-console

简约风格的slim框架控制台实现。

1.0.0 2019-09-15 21:37 UTC

This package is auto-updated.

Last update: 2024-09-16 08:39:50 UTC


README

简约风格的slim框架控制台实现。

关于

那么,这个包到底是什么呢?

嗯,这是一个简单的库,用于 Slim Framework 3,允许您从控制台调用控制器操作。

它使用策略设计模式,提供了一种灵活的方式来解析给定的argv数组。

您可以在这里找到有关php argv变量的更多信息。

此外,它提供了一个小的中间件类,旨在阻止对这些操作的Web访问。

安装

运行 composer require gameplayjdk/slim-console

是的,就这么简单。

用法

初始设置

<?php
// ...

$configuration = [];

$console = new \Slim\Console\Console();

if ($console->isSupported()) {
    $configuration['environment'] = $console->getEnvironment($argv);
}

$configuration['settings'] = [
    // ...
];

$app = new \Slim\App($configuration);

// ...

中间件使用

<?php

// ...

$app->get('/cli/some-command', \App\Controller\CliController::class . ':someCommandAction')
    ->add($console->getMiddleware());

// ...

从控制台调用该操作

php app.php cli some-command 

许可证

MIT许可证

开放TODOs

  • 编写一些单元测试
  • 更多的 ArgvParserInterface 实现