php CLI 模式下的傳參方法

2021-08-28 05:46:26 字數 880 閱讀 6269

在cli模式(命令列介面 command line inte***ce)下,傳入引數有如下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

)二. $argv

建立檔案:test2.php **如下

<?php

var_dump($argv);

?>

然後執行命令

php test2.php 1 2 3 a b c

結果如下:

array(7)

三. 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

php cli模式下獲取引數的方法

php在cli模式下接收引數有兩種方法 1.使用argv陣列 2.使用getopt方法 例如 需要執行乙個php,並傳遞三個引數 type news,is hot 1,limit 5 建立test.php print r argv 在命令列執行 php test.php news 1 5輸出 arr...

php cli模式下獲取引數的方法

php在cli模式下接收引數有兩種方法 1.使用argv陣列 2.使用getopt方法 例如 需要執行乙個php,並傳遞三個引數 type news,is hot 1,limit 5 建立test.php print r argv 在命令列執行 php test.php news 1 5輸出 arr...

php cli模式下獲取引數的方法

php問題解決 php在cli模式下接收引數有兩種方法 1.使用ar 陣列 2.使用getopt方法 1.使用ar 陣列 例如 需要執行乙個php,並傳遞三個引數 type news,is hot 1,limit 5 建立test.php print r ar 在命令列執行 php test.php...