本文比较了三个PHP控制台命令库:Symfony Console,HOA控制台和WebMozart控制台。 每个项目都为不同的项目需求和开发人员的喜好提供了独特的优势。
密钥差异:
成熟,健壮,广泛采用和功能丰富。 非常适合大多数常见的CLI应用。 由于其广泛的功能和大量的社区支持,这是最受欢迎的选择。
webmozart控制台:
项目起源和依赖项:
大小和复杂性:
HOA控制台的
最小的代码库,其次是Symfony,然后是WebMozart(不包括依赖项)。 复杂性分析(使用phploc,不包括测试目录)揭示了:
实践:一个简单的消息传递命令
>一个常见的任务是向多个收件人发送消息。 此示例演示了如何使用每个库来实现此功能。 (注意:所有实现的Message
类代码均被省略为简洁,但仍如原始文章所述保持。
> SYMFONY CONSOLE实现(简化):>
(代码大大缩短了简洁性,着重于关键方面)symfony实现使用
>,和输出格式格式标签用于颜色控制。InputArgument
InputOption
> (代码大大缩短了简洁性,着重于关键方面) HOA实现使用其
,和
类,用于命令解析,选项处理和颜色输出。Parser
> webMozart控制台实现(简化):GetOption
>
Cursor
(代码大大缩短了简洁性,着重于关键方面)
)与命令处理()分开,提高可检验性和可维护性。
结论:最佳选择取决于您项目的需求。 Symfony Console是一种坚实的通用解决方案。 HOA控制台在终端操作中表现出色。 WebMozart控制台是大型,复杂的项目优先级可测试性和清洁体系结构的强大竞争者。 选择库时考虑您的优先级。
>
MsgApplicationConfig
MsgCommandHandler
>经常询问有关PHP CLI库的问题(常见问题解答)(摘要):
>本节为FAQ提供了简洁的答案,重点是关键点。 原始文章的详细答案可用于进一步阅读。>
PHP CLI和其他CLI之间的密钥差异:php CLI专门用于PHP脚本,独立于服务器环境,允许长期运行的脚本。
安装:
使用Composer进行依赖性管理。
>
)开始,编写您的PHP代码,然后使文件可执行。
>输入/输出处理:
CLI库的好处#!/usr/bin/php
:
>
,,,或像xdebug这样的调试器。
echo
var_dump
print_r
以上是控制台大战 - PHP CLI图书馆的详细内容。更多信息请关注PHP中文网其他相关文章!