1
我有一個包含運行一些冗長數據庫操作的類的php文件。該文件包含在一些其他腳本中,但我希望能夠從另一個程序的命令行中調用該文件,或者將其作爲crontab的一部分,以便它可以在後臺運行以用於較長的進程。如何僅在從命令行調用文件時執行某些操作
有沒有辦法檢測到文件是從命令行調用的,所以我可以運行一個函數來實例化對象並執行它?
我有一個包含運行一些冗長數據庫操作的類的php文件。該文件包含在一些其他腳本中,但我希望能夠從另一個程序的命令行中調用該文件,或者將其作爲crontab的一部分,以便它可以在後臺運行以用於較長的進程。如何僅在從命令行調用文件時執行某些操作
有沒有辦法檢測到文件是從命令行調用的,所以我可以運行一個函數來實例化對象並執行它?
使用php_sapi_name()來確定PHP正在使用哪個接口。如果它是命令行,則會返回'cli',如果有其他內容,則返回特定的名稱字符串。
if (php_sapi_name() == 'cli') {
echo 'Executing from the command line';
} else {
echo 'Likely executing via a web server';
}