Linux下,一般程序安装都会安装在/usr/bin/php下面,可以通过man php查看一下,如果有信息说明可以使用,使用方法类似于window下。如果前面这步成立,那么你可以直接 php php文件 来运行php文件,如果man php没有信息,则说明当前php执行文件没有在环境路径里面,可以修改环境路径包含php路径,也可以类似于window进入php路径,在执行 php php文件。其他类似于window下。
PHP获取参数的三种方法:
方法一 使用$argc $argv
- <?php
- if ($argc > 1){
- print_r($argv);
- }
在命令行下运行 /usr/local/php/bin/php ./getopt.php -f 123 -g 456
运行结果:
- # /usr/local/php/bin/php ./getopt.php -f 123 -g 456
- Array
- (
- [0] => ./getopt.php
- [1] => -f
- [2] => 123
- [3] => -g
- [4] => 456
- )
方法二 使用getopt函数()
getopt (string
$options
[, array$longopts
] );
参数解析:
options
- 该字符串中的每个字符会被当做选项字符,匹配传入脚本的选项以单个连字符(-)开头。比如,一个选项字符串 "x" 识别了一个选项 -x。 只允许 a-z、A-Z 和 0-9。
longopts
- 选项数组。此数组中的每个元素会被作为选项字符串,匹配了以两个连字符(--)传入到脚本的选项。例如,长选项元素 "opt" 识别了一个选项 --opt。
options
可能包含了以下元素:
- 单独的字符(不接受值)
- 后面跟随冒号的字符(此选项需要值)
- 后面跟随两个冒号的字符(此选项的值可选)
- $options = "f:g:";
- $opts = getopt( $options );
- print_r($opts);
运行结果:
- Array
- (
- [f] => 123
- [g] => 456
- )
方法三 提示用户输入,然后获取输入的参数。有点像C语言
- fwrite(STDOUT, "Enter your name: ");
- $name = trim(fgets(STDIN));
- fwrite(STDOUT, "Hello, $name!");
stdout -- 标准输出设备 (printf("..")) 同 stdout。
stderr -- 标准错误输出设备
两者默认向屏幕输出。
但如果用转向标准输出到磁盘文件,则可看出两者区别。stdout输出到磁盘文件,stderr在屏幕。
在命令行下运行 /usr/local/php/bin/php ./getopt.php
运行结果
- Enter your name: zhang //(zhang 为用户输入)
- Hello, zhang!