test.php代码:
<?php print_r($argv); ?>
然后命令行:
php test.php
输出是:
Array ( [0] => test.php )
再用命令行:
php test.php arg1 arg2
输出是:
Array ( [0] => test.php [1] => arg1 [2] => arg2 )
在命令行里执行php脚本时,我们可以给它参数$argv,它是一个数组,形如
方法二 使用getopt函数()
getopt (string $options
[, array$longopts
] );
参数解析:
options
该字符串中的每个字符会被当做选项字符,匹配传入脚本的选项以单个连字符(-)开头。比如,一个选项字符串 "x" 识别了一个选项 -x。 只允许 a-z、A-Z 和 0-9。
longopts
选项数组。此数组中的每个元素会被作为选项字符串,匹配了以两个连字符(--)传入到脚本的选项。例如,长选项元素 "opt" 识别了一个选项 --opt。
options
可能包含了以下元素:
单独的字符(不接受值)
后面跟随冒号的字符(此选项需要值)
后面跟随两个冒号的字符(此选项的值可选)
运行结果:
方法三 提示用户输入,然后获取输入的参数。有点像C语言
stdout -- 标准输出设备 (printf("..")) 同 stdout。 stderr -- 标准错误输出设备 两者默认向屏幕输出。 但如果用转向标准输出到磁盘文件,则可看出两者区别。stdout输出到磁盘文件,stderr在屏幕。
在命令行下运行 /usr/local/php/bin/php ./getopt.php
运行结果
Enter your name: zhang //(zhang 为用户输入)
Hello, zhang!