第一种:getopt()
php中的getopt是用来接收参数时用的,用法举例:paramtest.php
<?php
$options = getopt('a:b:c:');
var_dump($options)
命令行测试:
bash-3.2# php paramtest.php -a 1 -b 2 -c 3
array(3) {
'a' =>
string(1) "1"
'b' =>
string(1) "2"
'c' =>
string(1) "3"
}
bash-3.2# php paramtest.php -a 1 -b 2 -c 3 -d 4
array(3) {
'a' =>
string(1) "1"
'b' =>
string(1) "2"
'c' =>
string(1) "3"
}
当在getopt中注册的参数不存在时,php程序是不会接收的。
第二种: argvor argc参数接收
argv是接收的参数数组, argc是接收的参数的个数,举例:
bash-3.2# php paramtest.php -a 1 -b 2 -c 3 -d 4
参数的个数:9
Array
(
[0] => paramtest.php
[1] => -a
[2] => 1
[3] => -b
[4] => 2
[5] => -c
[6] => 3
[7] => -d
[8] => 4
)
注:
- php执行的文件会默认成为argv的第一个参数
- 俩变量仅在 register_argc_argv 打开时可用
第三种:提示用户输入
程序如下:
<?php fwrite(STDOUT, '请输入信息:'); echo '您输入的信息是:'.fgets(STDIN);
测试:
bash-3.2# php paramtest.php
请输入信息:hello world
您输入的信息是:hello world
bash-3.2#