mouf/utils.console

Mouf PHP框架的控制台。

v1.0.6 2022-12-01 17:43 UTC

This package is auto-updated.

Last update: 2024-08-29 03:59:50 UTC


README

Latest Stable Version Latest Unstable Version License

Mouf PHP框架的控制台

这是一个基于Symfony 2的简单控制台,用于Mouf PHP框架

为什么?

Mouf是一个图形界面框架,所以大部分的开发工作都在UI中进行。然而,有时在部署脚本或远程服务器上使用命令行界面可能非常有用。此包提供了这个命令行。

它如何工作?

只需将此包包含在您的composer.json需求中

{
    "require": {
        "mouf/utils.console": "~1.0"
    }
}

命令行将通过vendor/bin/mouf_console访问

添加自己的命令

为了向可用命令列表中添加新命令,您必须创建一个新的类,该类扩展了Command

然后,您应该在Mouf用户界面中创建此类的实例。

最后,控制台应用程序在Mouf中由console实例表示。编辑此实例,并将您的命令拖放到已知命令列表中

The console instance

包开发者

您需要知道的大部分内容都详细说明在Symfony的文档中。

为了创建新的命令并在安装包时自动注册,您应该

  • 创建包的安装脚本
  • 在此安装脚本中创建命令的实例
  • 使用ConsoleUtils::registerCommand($command)注册此命令

以下是一个您可以放在安装脚本中的示例脚本

use Mouf\Actions\InstallUtils;
use Mouf\Console\ConsoleUtils;
use Mouf\MoufManager;

...
// Let's create an instance of "ConsoleUtils"
$consoleUtils = new ConsoleUtils($moufManager);

// We declare our instance of the Symfony command as a Mouf instance
$dbalRunSqlCommand = InstallUtils::getOrCreateInstance('dbalRunSqlCommand', 'Doctrine\\DBAL\\Tools\\Console\\Command\\RunSqlCommand', $moufManager);

// We register that instance descriptor using "ConsoleUtils"
$consoleUtils->registerCommand($dbalRunSqlCommand);

注意$dbalRunSqlCommand是'dbalRunSqlCommand'实例的描述符,而不是实例本身。

如果您需要特定的"helperSet",您可以使用ConsoleUtils::registerHelperSet($helperSet)注册它