W3Cschool
恭喜您成為首批注冊用戶
獲得88經(jīng)驗值獎勵
以下為 CLI SAPI 和其它 SAPI 模塊相比的顯著區(qū)別:
設置選項 | CLI SAPI 默認值 | 備注 |
---|---|---|
html_errors | false
|
無意義的 HTML 標記符會使得出錯信息很凌亂,所以在外殼下閱讀報錯信息是十分困難的。因此將該選項的默認值改為 false 。 |
implicit_flush | true
|
在命令行模式下,所有來自 print 和 echo 的輸出將被立即寫到輸出端,而不作任何地緩沖操作。如果希望延緩或控制標準輸出,仍然可以使用 output buffering 設置項。 |
max_execution_time | 0(無限值) | 鑒于在外殼環(huán)境下使用 PHP 的無窮的可能性,最大運行時間被設置為了無限值。為 web 開發(fā)的應用程序可能只需運行幾秒鐘時間,而外殼應用程序的運行時間可能會長的多。 |
register_argc_argv | true
|
由于該設置為 在使用 CLI SAPI 時,PHP 變量 |
output_buffering | false
|
雖然 php.ini 設置已經(jīng)硬編碼為 |
max_input_time | false
|
PHP CLI 不支持 GET、POST、文件上傳。 |
注意:這些設置無法在設置文件 php.ini 或任何指定的其它文件中被初始化為其它值。這些默認值被限制在所有其它的設置文件被解析后改變。 不過,它們的值可以在程序運行的過程中被改變 (盡管對于該運行過程來說,這些設置項是沒有意義的,例如 register_argc_argv)。
注意:推薦命令行腳本設置 ignore_user_abort。 更多信息參見 ignore_user_abort()。
<?php
// 名為 test.php 的簡單測試程序
echo getcwd(), "\n";
?>
在使用 CGI 版本時,其輸出為
$ pwd
/tmp
$ php-cgi -f another_directory/test.php
/tmp/another_directory
明顯可以看到 PHP 將當前目錄改成了剛剛運行過的腳本所在的目錄。
使用 CLI SAPI 模式,得到:
$ pwd
/tmp
$ php -q another_directory/test.php
/tmp
這使得在利用 PHP 編寫外殼工具時獲得了很大的便利。
注意:可以在命令行運行時給該 CGI SAPI 加上 -C 參數(shù),使其支持 CLI SAPI 的功能。
Copyright©2021 w3cschool編程獅|閩ICP備15016281號-3|閩公網(wǎng)安備35020302033924號
違法和不良信息舉報電話:173-0602-2364|舉報郵箱:jubao@eeedong.com
掃描二維碼
下載編程獅App
編程獅公眾號
聯(lián)系方式:
更多建議: