dotkernel / dot-cli
基于 laminas-cli 创建控制台应用程序的 DotKernel 组件
3.6.1
2024-07-04 09:18 UTC
Requires
- php: ~8.2.0 || ~8.3.0
- laminas/laminas-cli: ^1.4.0
- laminas/laminas-servicemanager: ^3.11.1
Requires (Dev)
- laminas/laminas-coding-standard: ^2.5
- mikey179/vfsstream: ^1.6.7
- phpunit/phpunit: ^10.2
- vimeo/psalm: ^5.13
README
重要
dot-cli 是在 laminas-cli 之上的包装器。
DotKernel 组件,用于基于 laminas-cli 构建 console 应用程序。
要求
- PHP >= 8.2
- laminas/laminas-servicemanager >= 3.11,
- laminas/laminas-cli >= 1.4
设置
1. 安装包
在您的应用程序根目录中运行以下命令
composer require dotkernel/dot-cli
2. 注册 ConfigProvider
打开您的应用程序的 config/config.php
,并在 DK packages 注释下添加以下行
Dot\Cli\ConfigProvider::class,
3. 复制引导文件
在此包中找到文件 bin/cli.php
,然后将其复制到您的应用程序的 bin/
目录。这是您将使用来执行命令的引导文件。
4. 复制配置文件
在此包中找到以下文件 config/autoload/cli.global.php
,然后将其复制到您的应用程序的 config/autoload/
目录。这是您将添加命令的配置文件。
测试
使用命令行,转到您的应用程序根目录,然后输入以下命令
php ./bin/cli.php
输出应类似于以下内容,包含有关如何开始使用 dot-cli 的信息
DotKernel CLI 1.0.0
Usage:
command [options] [arguments]
Options:
-h, --help Display help for the given command. When no command is given display help for the list command
-q, --quiet Do not output any message
-V, --version Display this application version
--ansi Force ANSI output
--no-ansi Disable ANSI output
-n, --no-interaction Do not ask any interactive question
-v|vv|vvv, --verbose Increase the verbosity of messages: 1 for normal output, 2 for more verbose output and 3 for debug
Available commands:
help Display help for a command
list List commands
demo
demo:command Demo command description.
如 config/autoload/cli.global.php
中所示,dot-cli 包含一个演示命令 demo:command
,它将帮助您了解创建新命令的基本知识。有关更多信息,请参阅 laminas-cli 文档。
设置为 cronjob
* * * * * /opt/plesk/php/7.4/bin/php /var/www/vhosts/example.com/httpdocs/bin/cli.php demo:command -q
或
* * * * * cd /var/www/vhosts/example.com/httpdocs/bin && /opt/plesk/php/7.4/bin/php ./cli.php demo:command -q
通过将 7.4 替换为您自己的 PHP 版本,将 example.com 替换为您自己的域名来调整命令。
注意命令末尾的 -q(或 --quiet)选项 - 它用作标志,通知应用程序不应返回任何输出(除非是错误)。
许可证
MIT