2011-04-06 82 views
1

我有一個包含運行一些冗長數據庫操作的類的php文件。該文件包含在一些其他腳本中,但我希望能夠從另一個程序的命令行中調用該文件,或者將其作爲crontab的一部分,以便它可以在後臺運行以用於較長的進程。如何僅在從命令行調用文件時執行某些操作

有沒有辦法檢測到文件是從命令行調用的,所以我可以運行一個函數來實例化對象並執行它?

回答

2

使用php_sapi_name()來確定PHP正在使用哪個接口。如果它是命令行,則會返回'cli',如果有其他內容,則返回特定的名稱字符串。

if (php_sapi_name() == 'cli') { 
    echo 'Executing from the command line'; 
} else { 
    echo 'Likely executing via a web server'; 
} 
相關問題