我想用PHP编写脚本来处理文本文件。我知道有几种方法可以做到这一点,除了我想做的一种方法。我希望能够传递文件名,就像传统的命令行应用程序一样。
例如:
php script.php textfile.txt
或
script.php textfile.txt
我认为可以这样做,因为你将参数传递给作曲家。我无法在文档或Google中找到该怎么做。
有人能指出我正确的方向吗?或者指向一种支持这种语言的语言(如果PHP不是选项,可能是Python或Groovy)。
答案 0 :(得分:3)
在php中,如果从命令行运行它,可以将php后的任何值视为参数。在script.php
内,您可以访问$argv
数组中的这些参数。
以下将是您的PHP脚本:
<?php
// script.php
print_r($argv);
然后,如果从命令行执行该文件:
> php script.php foo bar testfile.txt
您将获得以下结果
Array
(
[0] => script.php
[1] => foo
[2] => bar
[3] => testfile.txt
)
有关详细信息,请参阅php documentation。
这是创建脚本的一种非常简单的方法,但是如果要创建高级命令行工具程序,我建议使用Symfony2 Console Component。
控制台组件将使您能够将每个命令的功能封装在其自己的类中。然后你可以创建一个简单的&#34;控制台&#34;能够执行任何这些命令的文件。看一个简单的示例应用程序here。