PHP 要判斷現在程式的環境是 cgi、apache2handler 或是 cli, 要如何做?
PHP 判斷是否於 CLI 環境
PHP 可以使用 php_sapi_name() 來判斷.
於 Apache2 + mod_php 環境使用
<?php print_r(php_sapi_name()); // apache2handler ?>
於 CLI 的環境使用
<?php print_r(php_sapi_name()); // cli ?>
其它還有更多如: aolserver, apache, apache2filter, apache2handler, caudium, cgi (until PHP 5.3), cgi-fcgi, cli, cli-server, continuity, embed, isapi, litespeed, milter, nsapi, phttpd, pi3web, roxen, thttpd, tux, and webjames
主要要判斷是否於 CLI 環境, 於是寫個簡單的 Function 來判斷:
<?php function is_cli() { return (php_sapi_name() === 'cli') ? true : false; } // Test var_dump(is_cli()); ?>