如何可靠地確定我的 PHP 腳本是從命令列運行還是透過 HTTP 運行?

Patricia Arquette
發布: 2024-11-16 12:13:03
原創
323 人瀏覽過

How Can I Reliably Determine if My PHP Script is Running from the Command Line or via HTTP?

確定PHP 中的命令列與HTTP 執行

PHP 腳本開發中的一個常見任務是確定執行環境的類型,無論是該腳本透過命令列或HTTP 運行。這些知識對於做出輸出格式決策和相應的自訂行為至關重要。

檢查 SERVER['argc'] 是否存在的傳統方法並不可靠,因為即使使用「Apache」也可以填充它2.0 處理程序的伺服器 API。解決此查詢的規範方法是利用 php_sapi_name() 函數。

if (php_sapi_name() == "cli") {
    // In cli-mode
} else {
    // Not in cli-mode
}
登入後複製

php_sapi_name() 函式提供了多種可能的回傳值,包括 aolserver、apache、apache2filter、apache2handler、caudium、cgi、cli 和 webjames 等。請參閱 PHP 文件以取得詳盡的清單。

此外,在 PHP >= 4.2.0 中,預先定義常數 PHP_SAPI 與 php_sapi_name() 具有相同的值。透過利用這個常數,開發人員可以提高程式碼的可讀性和可維護性。

透過遵循此規範方法,PHP 開發人員可以可靠地確定其腳本的執行環境,從而實現有針對性的輸出格式和自訂的行為調整。

以上是如何可靠地確定我的 PHP 腳本是從命令列運行還是透過 HTTP 運行?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
作者最新文章
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板