簡體   English   中英

批處理文件中的php.exe腳本參數

[英]php.exe script parameters in batch file

我正在嘗試通過php.exe在Windows上執行PHP腳本,同時將參數傳遞給腳本。 我到處看,它說應該這樣工作:

php -f "path\to\my\script.php" -- -t 10 -i 5

-t 10 -i 5應該傳遞給script.php,在這里我可以通過$ argv訪問它們。 當我在命令行中鍵入此命令時,一切都會按預期運行。 當我將同一行粘貼到.cmd文件中時,script.php之后的部分將被視為單獨的命令。 (是的,它是批處理文件中的一行)

C:\>php -f "path\to\my\script.php" -- -t 10 -i 5
<<<output of the php script as expected>>>
C:\>mybatch.cmd
C:\>php -f "path\to\my\script.php"
<<<output of the php script not receiving the parameters>>>
C:\>-- -t 10 -i 5
'--' is not recognized as an internal or external command, operable program or batch file.

我最初以為-可能是一個問題,但是即使我省略了-(基本上將其他參數傳遞給php.exe而不是腳本),也會出現相同的問題。

為什么會這樣?

找到了問題,腳本的文件名后面似乎有一個換行符,但是在記事本中不可見。 不知道它如何到達那里(可能與復制/粘貼有關),但是刪除它可以解決問題。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM