php中的getop是用於接收cmd參數的時候用的
例如當你再linxu 中 需要用php調試的時候,往往需要帶參數調試
getopt就是可以實現帶參數傳入的命令
使用方式:
array
getopt ( string $options [, array $longopts ] )
注意:
$options字串中的每個字元將被用來作為選項字元和對傳遞給指令碼用一個連字號開始匹配選項( - )。例如,一個選項字元“x”對應一個選項-x。只有a - z,A - Z和0-9是允許的
空格是不能作為選項字元的。
note: 包含當運行於命令列下時傳遞給當前指令碼的參數的數組。
Note: 這個變數僅在 register_argc_argv 開啟時可用。
例1: 首先認識一下php變數 $argv
<?php var_dump($argv);?>
使用命令: php script.php arg1 arg2 arg3 則會輸出以下內容:
array(4) { [0]=> string(10) "script.php" [1]=> string(4) "arg1" [2]=> string(4) "arg2" [3]=> string(4) "arg3"}例2: getopt 簡單樣本
<?php $options = getopt("f:hp:"); var_dump($options);?> 使用命令: php script.php -f value -h 或者 php script.php -fvalue -h則會輸出一下內容:
array(2) { ["f"]=> string(5) "value" ["h"]=> bool(false)}例3:getopt
<?php$shortopts = "";$shortopts .= "f:"; // Required value$shortopts .= "v::"; // Optional value$shortopts .= "abc"; // These options do not accept values$longopts = array( "required:", // Required value "optional::", // Optional value "option", // No value "opt", // No value);$options = getopt($shortopts, $longopts);var_dump($options);?>
php script.php -f "value for f" -v -a --required value --optional="optional
value" --option will output:輸出:
array(6) { ["f"]=> string(11) "value for f" ["v"]=> bool(false) ["a"]=> bool(false) ["required"]=> string(5) "value" ["optional"]=> string(14) "optional value" ["option"]=> bool(false)}