跳到内容

使用控制台命令、快捷方式和内置命令

编辑此页

除了为您的命令指定的选项外,还有一些内置选项以及控制台组件的几个内置命令。

注意

这些示例假设您已添加文件 application.php 以在 CLI 运行

1
2
3
4
5
6
7
8
9
10
11
#!/usr/bin/env php
<?php
// application.php

require __DIR__.'/vendor/autoload.php';

use Symfony\Component\Console\Application;

$application = new Application();
// ...
$application->run();

内置命令

有一个内置命令 list,它输出所有标准选项和已注册的命令

1
$ php application.php list

您也可以通过不运行任何命令来获得相同的输出

1
$ php application.php

help 命令列出指定命令的帮助信息。例如,要获取 list 命令的帮助

1
$ php application.php help list

运行 help 而不指定命令将列出全局选项

1
$ php application.php help

全局选项

您可以使用 --help 选项获取任何命令的帮助信息。要获取 list 命令的帮助

1
2
$ php application.php list --help
$ php application.php list -h

您可以使用以下命令抑制输出

1
2
3
4
5
6
# suppresses all output, including errors
$ php application.php list --silent

# suppresses all output except errors
$ php application.php list --quiet
$ php application.php list -q

7.2

--silent 选项在 Symfony 7.2 中引入。

您可以使用以下命令获取更详细的消息(如果命令支持此功能)

1
2
$ php application.php list --verbose
$ php application.php list -v

要输出更详细的消息,您可以使用以下选项

1
2
$ php application.php list -vv
$ php application.php list -vvv

如果您设置可选参数以给您的应用程序命名和版本

1
$application = new Application('Acme Console Application', '1.2');

那么您可以使用

1
2
$ php application.php list --version
$ php application.php list -V

获取此信息输出

1
Acme Console Application version 1.2

如果您不提供控制台名称,则只会输出

1
Console Tool

您可以使用以下命令强制启用 ANSI 输出颜色

1
$ php application.php list --ansi

或使用以下命令关闭它

1
$ php application.php list --no-ansi

您可以使用以下命令禁止运行命令时的任何交互式提问

1
2
$ php application.php list --no-interaction
$ php application.php list -n

快捷方式语法

您不必键入完整的命令名称。您只需键入最短的明确名称即可运行命令。因此,如果存在非冲突命令,则可以像这样运行 help

1
$ php application.php h

如果您的命令使用 : 来命名命令空间,那么您只需要为每个部分键入最短的明确文本。如果您已创建 demo:greet,如 控制台组件 中所示,那么您可以使用以下命令运行它

1
2
3
4
5
6
$ php application.php d:g Fabien

# as long as it's unambiguous, you can also mix upper and lower case
# php application.php Demo:g Fabien
# php application.php de:Gr Fabien
# php application.php DE:Gre Fabien

如果您输入的短命令是模棱两可的(即,有多个命令匹配),则不会运行任何命令,并且会输出一些可能的命令建议供您选择。

本作品,包括代码示例,根据 Creative Commons BY-SA 3.0 许可获得许可。
目录
    版本