php CLI 模式下的传参方法

在CLI模式(命令行界面 Command Line Interface)下,传入参数有如下3种方法:

一. getopt函数(PHP 4 >= 4.3.0, PHP 5)

getopt — 从命令行参数列表中获取选项

该函数会匹配传入脚本以单个连字符(-)或(--)开头的选项,将其转化为关联数组。

建立文件:test1.php 代码如下

<?php

$opt= getopt('m:n:');

print_r($opt);

?>

然后运行命令

php test1.php -maaaaaa -nbbbbbbb

结果如下:

array(

[m] => aaaaaa

[n] => bbbbbbb

)

详情请看手册 :http://www.php.net/manual/zh/function.getopt.php

二. $argv

建立文件:test2.php 代码如下

<?php

var_dump($argv);

?>

然后运行命令

php test2.php 1 2 3 a b c

结果如下:

array(7){

[0]=>string(9) “test2.php”

[1]=>string(1) “1″.

[2]=>string(1) “2″

[3]=>string(1) “3″

[4]=>string(1) “a”

[5]=>string(1) “b”

[6]=>string(1) “c”

}

详情参见手册:http://www.php.net/manual/zh/reserved.variables.argv.php

三. STDIN

建立文件:test3.php 代码如下

<?php

fwrite(STDOUT, "Enter your name: ");

$name = trim(fgets(STDIN));

fwrite(STDOUT, "Hello, $name!");

?>

然后运行命令

php test3.php

结果如下:

此时屏幕输出:Enter your name:

我们在后面输入:111然后回车

此时屏幕会出现hello,111