1
A
回答
5
如果我正確理解你的問題,它不是http和命令行調用,而是瀏覽器與「非瀏覽器「(例如通過捲曲,wget等)呼叫。有沒有辦法檢查這一點,因爲wget等是技術上的瀏覽器,他們只是不會有一個GUI。您可以嘗試檢查HTTP_USER_AGENT,但這是完全不可靠的,因爲無法強制客戶端正確識別自己。
+0
我想你說得對 – 2010-09-30 11:41:37
2
1
function __get_started_from_cli_state()
{
return substr(php_sapi_name(), 0, 3) == 'cli';
}
function __get_started_from_cgi_state()
{
return substr(php_sapi_name(), 0, 3) == 'cgi';
}
function __get_started_from_browser_state()
{
return !(__get_started_from_cli_state() ||
__get_started_from_cgi_state());
}
相關問題
- 1. 如何判斷在瀏覽器中還是在NodeJS中運行?
- 2. 如何判斷一個腳本是獨立運行還是被稱爲python中的子進程
- 3. 如何判斷用戶是否使用Brave作爲瀏覽器?
- 4. 如何判斷應用程序是作爲後期/預構建事件還是獨立運行?
- 5. 如何判斷請求是來自瀏覽器還是服務器?
- 6. PHP腳本作爲根在終端運行,但不是在瀏覽器中
- 7. 有可能確定ruby代碼塊是在http服務器下執行還是作爲獨立腳本執行?
- 8. 如何判斷Flex是否在調試模式下運行?
- 9. 現代瀏覽器是並行還是順序加載腳本?
- 10. 如何從運行腳本內判斷Python解釋器運行的是什麼?
- 11. 如何判斷我是否在網絡服務器下運行?
- 12. 是否可以運行多個獨立的RSelenium瀏覽器?
- 13. 如何判斷JAR文件是由JAVA中的sh腳本還是bat腳本運行
- 14. 從PHP腳本運行webkit2png工作在終端,而不是在瀏覽器
- 15. 如何判斷庫是COM還是DCOM?
- 16. 如何發佈獨立腳本作爲cron作業運行?
- 17. 如何在PHP中判斷它是數組還是散列?
- 18. 在服務器內運行腳本不是瀏覽器
- 19. 如何判斷PHP的垃圾收集器是否運行
- 20. 如何正確判斷瀏覽器是否支持border-image?
- 21. 如何判斷用戶是第一次運行還是更新應用程序
- 22. 如何使用arcpy.GetParameterAsText作爲獨立腳本運行時更改python腳本?
- 23. 如何判斷我即將在羣集上還是在「本地」模式下運行Hadoop串流作業?
- 24. 如何從ruby腳本中判斷它是從命令行還是從非交互式進程運行?
- 25. 如何確定Coffeescript腳本是作爲腳本運行還是在模塊中需要運行?
- 26. 如何判斷一個腳本是否在後臺運行並使用nohup?
- 27. 爲什麼我的php腳本被下載而不是運行?
- 28. 如何判斷應用程序是以32位還是64位模式運行?
- 29. 如何確定* .bat文件是從控制檯運行還是獨立運行?
- 30. 是否有可能在瀏覽器中運行Shell腳本
可能重複[什麼是規範的方式來確定PHP腳本的命令行與http執行?](http://stackoverflow.com/questions/173851/what-is-the-canonical-way-to-確定命令行與http-execution-of-a-php-sc) – 2010-09-30 11:30:55
爲了弄清楚事情...... POST中的HTTP/1.1方法與CLI不一樣......站在什麼意思 - 單獨的腳本? – ChrisR 2010-09-30 11:32:07