首頁 >後端開發 >php教程 >如何將變數傳遞給命令列 PHP 腳本?

如何將變數傳遞給命令列 PHP 腳本?

DDD
DDD原創
2024-11-13 15:36:03667瀏覽

How to Pass Variables to Command-Line PHP Scripts?

將變數傳遞給命令列PHP 腳本

使用crontab 從命令列執行PHP 腳本時,您可能會在傳遞變數時遇到挑戰變數。此上下文不支援您嘗試使用查詢字串 (myfile.php?type=daily) 的語法。

要解決此問題,請將變數作為參數傳遞給 PHP 執行檔。將指令替換為:

php myfile.php daily

在 PHP 腳本中,從 $argv 陣列擷取變數:

$type = $argv[1]; // Assuming '$argv[0]' contains the script name

替代方法:

如果腳本也用作網頁,那麼你有兩個options:

  1. 利用Wget 的shell 腳本來傳遞變數:
#!/bin/sh
wget http://location.to/myfile.php?type=daily
  1. 檢查腳本是否從命令列呼叫PHP腳本:
if (defined('STDIN')) {
  $type = $argv[1];
} else {
  $type = $_GET['type'];
}

記得確保 $argv 陣列包含必要的變數並根據需要處理邊緣情況。

以上是如何將變數傳遞給命令列 PHP 腳本?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn