下面是我用来构建php命令行应用程序来处理数据的内容。你知道吗
这些应用程序不是web应用程序,它们在命令行shell中运行以处理一些数据。你知道吗
由于遗留的原因,我使用了laravelphp框架。你知道吗
因此,我使用Laravel“Artisan Development”来构建自定义命令,然后运行所使用的命令
php artisan ...
Laravel是一个web应用程序,但现在,我只使用它的artisan命令。为了这个目的,我安装了完整版本的Laravel框架,这似乎有点过分了。你知道吗
但我找不到一个好的php微框架专门用来构建命令应用程序。你知道吗
我的问题是
谢谢!你知道吗
对于Python,我绝对推荐Click。它已成为用于创建命令行工具的Python库。它是由Flask(目前GitHub上最受欢迎的5个Python repo)的作者编写/维护的。在创建命令行工具时,我一直使用Click。它拥有大多数人所需要的一切。你知道吗
不确定您对微框架的定义是什么,但Click没有外部依赖关系,在我安装它时大约占用500 KB(包括.pyc文件)。而且,它并不需要任何样板文件来设置和开始使用。所以我想我可以称之为微观框架。你知道吗
我建了一个小图书馆
https://github.com/ArtisticPhoenix/Cli
欢迎您使用它或从中获得灵感,基本上它是围绕
getopt()
的包装http://php.net/manual/en/function.getopt.php
你也可以在composer上找到它:
基本用法如下:
等等。你知道吗
你甚至可以从一个PHP配置文件中完成,这个文件基本上被放到
setArgument()
~中。你知道吗那么
您还可以像这样对输入参数进行动态验证(使用闭包):
如果值是好的还是不好的,上面只返回一个布尔值。如果您返回false,它将发出异常等。您还可以按如下方式生成所需的参数:
当然你可以把这两个结合起来。你知道吗
Github页面上有一些文档。它有一些小的依赖关系,只是我喜欢重用的普通东西(都在composer中)。总共不到1000行代码。可能是20或30kb。你知道吗
我需要做一个小命令行的东西,我有这个想法。。。你知道吗
相关问题 更多 >
编程相关推荐