你的論點在命令時間的推移將在全球以及超級全球$_SERVER["argv"]
與$argv[0]
和$_SERVER["argv"][0]
是被調用的命令。
解析出例如呼叫./myscript.php --user=root --password=foobar
function parse_argvs(){
if($params = $_SERVER["argv"]){
$file = array_shift($params);
while($params){
$param = array_shift($params);
switch(strspn($param, "-")){
case(1):
$OPTS[ trim($param, " -") ] = array_shift($params);
break;
case(2):
list($key, $value) = explode("=", $param);
$OPTS[ trim($key, " -") ] = $value;
break;
default:
$OPTS[ $param ] = true;
break;
}
}
}
return $OPTS ?: array();
}
名稱類似於
$parsed = parse_argvs();
echo $parsed['user']; //root
echo $parsed['password']; //password
有用的功能這些是在調用時傳遞實際命令行參數。我希望這有幫助。
這裏有作品嗎?任何錯誤? – Wrikken
順便說一句,從命令行'$ base_name = trim(fgets(STDIN));'在它自己的工作,而不是自己打開/關閉處理。 – Wrikken
感謝您的幫助!這是行得通!: 'echo「網站名稱:」; $ base_name = trim(fgets(STDIN)); echo「Password:」; $ base_password = trim(fgets(STDIN)); echo「\ n \ n \ n網站名稱:$ base_name \ n \ n密碼:$ base_password」; ' – Voidnull