從命令列將變數傳遞給PHP 腳本
透過命令列(例如透過crontab)執行PHP 腳本時,這很有用將變數傳遞給腳本以進行自訂和控制。但是,將查詢參數附加到腳本路徑的傳統方法(例如 php myfile.php?type=daily)可能無法運作。
$argv 數組
對於命令列執行,PHP 提供了 $argv 數組,其中包含傳遞給腳本的參數。第一個元素 $argv[0] 是腳本的檔名。從 $argv[1] 開始的後續元素包含附加參數。
透過$argv 傳遞參數
在這種情況下要傳遞型別參數,只需呼叫腳本如下:
php myfile.php daily
在PHP在腳本中,您可以使用以下命令檢索參數$argv[1]:
$type = $argv[1];
網頁注意事項
如果你的PHP腳本也用作網頁,你需要區分命令- 線路和網路存取。一種方法是檢查STDIN 是否已定義,這通常表示命令列執行:
if (defined('STDIN')) { $type = $argv[1]; } else { $type = $_GET['type']; }
或者,您可以使用shell 腳本和Wget 從命令列透過Web 存取腳本:
#!/bin/sh wget http://location.to/myfile.php?type=daily
透過了解$argv 的使用並考慮Web 訪問,您可以有效地將變數傳遞給從命令列執行的PHP 腳本。
以上是如何將變數傳遞給從命令列執行的 PHP 腳本?的詳細內容。更多資訊請關注PHP中文網其他相關文章!