程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> 網頁編程 >> PHP編程 >> PHP綜合 >> php.ini中的php-5.2.0配置指令大全

php.ini中的php-5.2.0配置指令大全

編輯:PHP綜合
本文不是對英文版 php.ini 的簡單翻譯,而是參考了眾多資料以後,結合作者的理解,在原有 php.ini 基礎上增加了一些實用模塊的配置說明,同時對文件內容的安排進行了調整。由於作者不喜歡 no-free ,所以刪除了除 MySQLPostgreSQL 以外的其他數據庫模塊配置選項。

  關於PHP.ini ;;

  這個文件必須命名為''PHP.ini''並放置在httpd.conf中的PHPIniDir指令指定的目錄中。

  最新版本的PHP.ini可以在下面兩個位置查看:

  http://cvs.PHP.Net/vIEwvc.CGI/php-src/PHP.ini-recommended?vIEw=co

  http://cvs.PHP.Net/vIEwvc.CGI/php-src/PHP.ini-dist?vIEw=co

  語法

  該文件的語法非常簡單。空白字符和以分號開始的行被簡單地忽略。

  章節標題(例如: [PHP])也被簡單地忽略,即使將來它們可能有某種意義。

  設置指令的格式如下:

  directive = value

  指令名(directive)是大小寫敏感的!所以"foo=bar"不同於"FOO=bar"。

  值(value)可以是:

  1. 用引號界定的字符串(如:"foo")

  2. 一個數字(整數或浮點數,如:0, 1, 34, -1, 33.55)

  3. 一個PHP常量(如:E_ALL, M_PI)

  4. 一個INI常量(On, Off, none)

  5. 一個表達式(如:E_ALL & ~E_NOTICE)

  INI文件中的表達式僅使用:位運算符、邏輯非、圓括號:

  | 位或

  & 位與

  ~ 位非

  ! 邏輯非

  布爾標志用 On 表示打開,用 Off 表示關閉。

  一個空字符串可以用在等號後不寫任何東西表示,或者用 none 關鍵字

  foo =     ; 將foo設為空字符串

  foo = none  ; 將foo設為空字符串

  foo = "none" ; 將foo設為字符串''none''

  

  如果你在指令值中使用動態擴展(PHP擴展或Zend擴展)中的常量,

  那麼你只能在加載這些動態擴展的指令行之後使用這些常量。

   httpd.conf ;;

  還可以在httpd.conf中覆蓋PHP.ini的值,以進行更靈活的配置:

  PHP_value name value ;設置非bool型的指令,將value設為none則清除先前的設定

  PHP_flag name on|off ;僅用於設置bool型的指令

  

  PHP常量(如E_ALL)僅能在PHP.ini中使用,在httpd.conf中必須使用相應的掩碼值。

  帶"SYS"標志的指令只能在httpd.conf中的全局配置部分使用,

  帶"ini"標志的指令不能在httpd.conf中使用,它們僅能用於PHP.ini中。

====================配置指令詳解========================================

  以下每個指令的設定值都與 PHP-5.2.0 內建的默認值相同。

  也就是說,如果''PHP.ini''不存在,或者你刪掉了某些行,默認值與之相同。

  ;;;;;;;;;;;;

   apache ;;

  ;;;;;;;;;;;;

  [apache]

  僅在將PHP作為apache模塊時才有效。

  engine = On

  是否啟用PHP解析引擎。

  可以在httpd.conf中基於目錄或者虛擬主機來打開或者關閉PHP解析引擎。

  last_modifIEd = Off

  是否在Last-ModifIEd應答頭中放置該PHP腳本的最後修改時間。

  xbithack = Off

  是否不管文件結尾是什麼,都作為PHP可執行位組來解析。

  child_terminate = Off

  PHP腳本在請求結束後是否允許使用apache_child_terminate()函數終止子進程。

  該指令僅在UNIX平台上將PHP安裝為apache1.3的模塊時可用。其他情況下皆不存在。

  ;;;;;;;;;;;;;

   PHP核心 ;;

  ;;;;;;;;;;;;;

  [PHP-Core-DateTime]

  前四個配置選項目前僅用於date_sunrise()和date_sunset()函數。

  date.default_latitude = 31.7667

  默認緯度

  date.default_longitude = 35.2333

  默認經度

  date.sunrise_zenith = 90.583333

  默認日出天頂

  date.sunset_zenith = 90.583333

  默認日落天頂

  date.timezone =

  未設定TZ環境變量時用於所有日期和時間函數的默認時區。

  中國大陸應當使用"PRC"

  應用時區的優先順序為:

  1. 用date_default_timezone_set()函數設定的時區(如果設定了的話)

  2. TZ 環境變量(如果非空的話)

  3. 該指令的值(如果設定了的話)

  4. PHP自己推測(如果操作系統支持)

  5. 如果以上都不成功,則使用 UTC

  [PHP-Core-Assert]

  assert.active = On

  是否啟用assert()斷言評估

  assert.bail = Off

  是否在發生失敗斷言時中止腳本的執行

assert.callback =

  發生失敗斷言時執行的回調函數

  assert.quIEt_eval = Off

  是否使用安靜評估(不顯示任何錯誤信息,相當於error_reporting=0)。

  若關閉則在評估斷言表達式的時候使用當前的error_reporting指令值。

  assert.warning = On

  是否對每個失敗斷言都發出警告

  [PHP-Core-SafeMode]

  安全模式是為了解決共享服務器的安全問題而設立的。

  但試圖在PHP層解決這個問題在結構上是不合理的,

  正確的做法應當是修改web服務器層和操作系統層。

  因此在PHP6中廢除了安全模式,並打算使用open_basedir指令取代之。

  safe_mode = Off

  SYS

  是否啟用安全模式。

  打開時,PHP將檢查當前腳本的擁有者是否和被操作的文件的擁有者相同,

  相同則允許操作,不同則拒絕操作。

  safe_mode_gid = Off

  SYS

  在安全模式下,默認在訪問文件時會做UID比較檢查。

  但有些情況下嚴格的UID檢查反而是不適合的,寬松的GID檢查已經足夠。

  如果你想將其放寬到僅做GID比較,可以打開這個參數。

  safe_mode_allowed_env_vars = "PHP_"

  SYS

  在安全模式下,用戶僅可以更改的環境變量的前綴列表(逗號分隔)。

  允許用戶設置某些環境變量,可能會導致潛在的安全漏洞。

  注意: 如果這一參數值為空,PHP將允許用戶更改任意環境變量!

  safe_mode_protected_env_vars = "LD_LIBRARY_PATH"

  SYS

  在安全模式下,用戶不能更改的環境變量列表(逗號分隔)。

  這些變量即使在safe_mode_allowed_env_vars指令設置為允許的情況下也會得到保護。

  safe_mode_exec_dir = "/usr/local/PHP/bin"SYS

  在安全模式下,只有該目錄下的可執行程序才允許被執行系統程序的函數執行。

  這些函數是:system, escapeshellarg, escapeshellcmd, exec, passthru,

  proc_close, proc_get_status, proc_nice, proc_open, proc_terminate, shell_exec

  safe_mode_include_dir =

  SYS

  在安全模式下,該組目錄和其子目錄下的文件被包含時,將跳過UID/GID檢查。

  換句話說,如果此處的值為空,任何UID/GID不符合的文件都不允許被包含。

  這裡設置的目錄必須已經存在於include_path指令中或者用完整路徑來包含。

  多個目錄之間用冒號(Win下為分號)隔開。

  指定的限制實際上是一個前綴,而非一個目錄名,

  也就是說"/dir/incl"將允許訪問"/dir/include"和"/dir/incls"

  如果您希望將訪問控制在一個指定的目錄,那麼請在結尾加上斜線。

  sql.safe_mode = Off

  SYS

  是否使用SQL安全模式。

  如果打開,指定默認值的數據庫連接函數將會使用這些默認值代替支持的參數。

  對於每個不同數據庫的連接函數,其默認值請參考相應的手冊頁面。

  [PHP-Core-Safe]

  allow_url_fopen = On

  ini

  是否允許打開遠程文件

  allow_url_include = Off

  SYS

  是否允許include/require遠程文件。

  disable_classes =

  ini

  該指令接受一個用逗號分隔的類名列表,以禁用特定的類。

  disable_functions =

  ini

  該指令接受一個用逗號分隔的函數名列表,以禁用特定的函數。

  enable_dl = On

  SYS

  是否允許使用dl()函數。dl()函數僅在將PHP作為apache模塊安裝時才有效。

  禁用dl()函數主要是出於安全考慮,因為它可以繞過open_basedir指令的限制。

  在安全模式下始終禁用dl()函數,而不管此處如何設置。

  expose_PHP = On

  ini

  是否暴露PHP被安裝在服務器上的事實(在http頭中加上其簽名)。

  它不會有安全上的直接威脅,但它使得客戶端知道服務器上安裝了PHP。

  open_basedir =

  SYS

  將PHP允許操作的所有文件(包括文件自身)都限制在此組目錄列表下。

  當一個腳本試圖打開一個指定目錄樹之外的文件時,將遭到拒絕。

  所有的符號連接都會被解析,所以不可能通過符號連接來避開此限制。

  特殊值''.''指定了存放該腳本的目錄將被當做基准目錄。

  但這有些危險,因為腳本的工作目錄可以輕易被chdir()改變。

  對於共享服務器,在httpd.conf中靈活設置該指令將變得非常有用。

  在Windows中用分號分隔目錄,UNIX系統中用冒號分隔目錄。

  作為apache模塊時,父目錄中的open_basedir路徑將自動被繼承。

  指定的限制實際上是一個前綴,而非一個目錄名,

  也就是說"/dir/incl"將允許訪問"/dir/include"和"/dir/incls",

  如果您希望將訪問控制在一個指定的目錄,那麼請在結尾加上一個斜線。

  默認是允許打開所有文件。

  [PHP-Core-Error]

  error_reporting = E_ALL & ~E_NOTICE

錯誤報告級別是位字段的疊加,推薦使用 E_ALL | E_STRICT

  1 E_ERROR       致命的運行時錯誤

  2 E_WARNING      運行時警告(非致命性錯誤)

  4 E_PARSE       編譯時解析錯誤

  8 E_NOTICE      運行時提醒(經常是bug,也可能是有意的)

  16 E_CORE_ERROR    PHP啟動時初始化過程中的致命錯誤

  32 E_CORE_WARNING   PHP啟動時初始化過程中的警告(非致命性錯)

  64 E_COMPILE_ERROR   編譯時致命性錯

  128 E_COMPILE_WARNING  編譯時警告(非致命性錯)

  256 E_USER_ERROR    用戶自定義的致命錯誤

  512 E_USER_WARNING   用戶自定義的警告(非致命性錯誤)

  1024 E_USER_NOTICE    用戶自定義的提醒(經常是bug,也可能是有意的)

  2048 E_STRICT      編碼標准化警告(建議如何修改以向前兼容)

  4096 E_RECOVERABLE_ERROR 接近致命的運行時錯誤,若未被捕獲則視同E_ERROR

  6143 E_ALL        除E_STRICT外的所有錯誤(PHP6中為8191,即包含所有)

  track_errors = Off

  是否在變量$PHP_errormsg中保存最近一個錯誤或警告消息。

  display_errors = On

  是否將錯誤信息作為輸出的一部分顯示。

  在最終發布的web站點上,強烈建議你關掉這個特性,並使用錯誤日志代替(參看下面)。

  在最終發布的web站點打開這個特性可能暴露一些安全信息,

  例如你的web服務上的文件路徑、數據庫規劃或別的信息。

  display_startup_errors = Off

  是否顯示PHP啟動時的錯誤。

  即使display_errors指令被打開,關閉此參數也將不顯示PHP啟動時的錯誤。

  建議你關掉這個特性,除非你必須要用於調試中。

  report_memleaks = On

  是否報告內存洩漏。這個參數只在以調試方式編譯的PHP中起作用,

  並且必須在error_reporting指令中包含 E_WARNING

  report_zend_debug = On

  尚無說明文檔

  Html_errors = On

  是否在出錯信息中使用Html標記。

  注意: 不要在發布的站點上使用這個特性!

  docref_root = ;"http://localhost/PHPmanual/"

  docref_ext =  ;".Html"

  如果打開了Html_errors指令,PHP將會在出錯信息上顯示超連接,

  直接鏈接到一個說明這個錯誤或者導致這個錯誤的函數的頁面。

  你可以從http://www.PHP.Net/docs.PHP下載PHP手冊,

  並將docref_root指令指向你本地的手冊所在的URL目錄。

  你還必須設置docref_ext指令來指定文件的擴展名(必須含有''.'')。

  注意: 不要在發布的站點上使用這個特性。

  error_prepend_string = ;"<font color=#f00>"

  用於錯誤信息前輸出的字符串

  error_append_string =  ;"</font>"

  用於錯誤信息後輸出的字符串

  XMLrpc_errors = Off

  XMLrpc_error_number = 0

  尚無文檔

  [PHP-Core-Logging]

  define_syslog_variables = Off

  是否定義各種系統日志變量,如:$LOG_PID, $LOG_CRON 等等。

  關掉它以提高效率的好主意。

  你可以在運行時調用define_syslog_variables()函數來定義這些變量。

  error_log =

  將錯誤日志記錄到哪個文件中。該文件必須對Web服務器用戶可寫。

  syslog 表示記錄到系統日志中(NT下的事件日志, Unix下的syslog(3))

  如果此處未設置任何值,則錯誤將被記錄到Web服務器的錯誤日志中。

log_errors = Off

  是否在日志文件裡記錄錯誤,具體在哪裡記錄取決於error_log指令。

  強烈建議你在最終發布的web站點時使用日志記錄錯誤而不是直接輸出,

  這樣可以讓你既知道那裡出了問題,又不會暴露敏感信息。

  log_errors_max_len = 1024

  設置錯誤日志中附加的與錯誤信息相關聯的錯誤源的最大長度。

  這裡設置的值對顯示的和記錄的錯誤以及$PHP_errormsg都有效。

  設為 0 可以允許無限長度。

  ignore_repeated_errors = Off

  記錄錯誤日志時是否忽略重復的錯誤信息。

  錯誤信息必須出現在同一文件的同一行才被被視為重復。

  ignore_repeated_source = Off

  是否在忽略重復的錯誤信息時忽略重復的錯誤源。

  [PHP-Core-Mail]

  要使郵件函數可用,PHP必須在編譯時能夠訪問sendmail程序。

  如果使用其它的郵件程序,如qmail或postfix,確保使用了相應的sendmail包裝。

  PHP首先會在系統的PATH環境變量中搜索sendmail,接著按以下順序搜索:

  /usr/bin:/usr/sbin:/usr/etc:/etc:/usr/ucblib:/usr/lib

  強烈建議在PATH中能夠找到sendmail。

  另外,編譯PHP的用戶必須能夠訪問sendmail程序。

  SMTP = "localhost"

  mail()函數中用來發送郵件的SMTP服務器的主機名稱或者IP地址。僅用於win32。

  smtp_port = 25

  SMTP服務器的端口號。僅用於win32。

  sendmail_from =

  發送郵件時使用的"From:"頭中的郵件地址。僅用於win32

  該選項還同時設置了"Return-Path:"頭。

  sendmail_path = "-t -i"

  SYS

  僅用於unix,也可支持參數(默認的是''sendmail -t -i'')

  sendmail程序的路徑,通常為"/usr/sbin/sendmail或/usr/lib/sendmail"。

  configure腳本會嘗試找到該程序並設定為默認值,但是如果失敗的話,可以在這裡設定。

  不使用sendmail的系統應將此指令設定為sendmail替代程序(如果有的話)。

  例如,Qmail用戶通常可以設為"/var/qmail/bin/sendmail"或"/var/qmail/bin/qmail-inject"。

  qmail-inject 不需要任何選項就能正確處理郵件。

  mail.force_extra_parameters =

  作為額外的參數傳遞給sendmail庫的強制指定的參數附加值。

  這些參數總是會替換掉mail()的第5個參數,即使在安全模式下也是如此。

  [PHP-Core-ResourceLimit]

  default_socket_timeout = 60

  默認socket超時(秒)

  max_execution_time = 30

  每個腳本最大允許執行時間(秒),0 表示沒有限制。

  這個參數有助於阻止劣質腳本無休止的占用服務器資源。

  該指令僅影響腳本本身的運行時間,任何其它花費在腳本運行之外的時間,

  如用system()/sleep()函數的使用、數據庫查詢、文件上傳等,都不包括在內。

  在安全模式下,你不能用ini_set()在運行時改變這個設置。

memory_limit = 16M

  一個腳本所能夠申請到的最大內存字節數(可以使用K和M作為單位)。

  這有助於防止劣質腳本消耗完服務器上的所有內存。

  要能夠使用該指令必須在編譯時使用"--enable-memory-limit"配置選項。

  如果要取消內存限制,則必須將其設為 -1 。

  設置了該指令後,memory_get_usage()函數將變為可用。

  max_input_time = -1

  每個腳本解析輸入數據(POST, GET, upload)的最大允許時間(秒)。

  -1 表示不限制。

  post_max_size = 8M

  允許的POST數據最大字節長度。此設定也影響到文件上傳。

  如果POST數據超出限制,那麼$_POST和$_FILES將會為空。

  要上傳大文件,該值必須大於upload_max_filesize指令的值。

  如果啟用了內存限制,那麼該值應當小於memory_limit指令的值。

  realpath_cache_size = 16K

  SYS

  指定PHP使用的realpath(規范化的絕對路徑名)緩沖區大小。

  在PHP打開大量文件的系統上應當增大該值以提高性能。

  realpath_cache_ttl = 120

  SYS

  realpath緩沖區中信息的有效期(秒)。

  對文件很少變動的系統,可以增大該值以提高性能。

  [PHP-Core-FileUpLoad]

  file_uploads = On

  SYS

  是否允許HTTP文件上傳。

  參見upload_max_filesize, upload_tmp_dir, post_max_size指令

  upload_max_filesize = 2M

  允許上傳的文件的最大尺寸。

  upload_tmp_dir =

  SYS

  文件上傳時存放文件的臨時目錄(必須是PHP進程用戶可寫的目錄)。

  如果未指定則PHP使用系統默認的臨時目錄。

  [PHP-Core-MagicQuotes]

  PHP6將取消魔術引號,相當於下列指令全部為 Off

  magic_quotes_gpc = On

  是否對輸入的GET/POST/CookIE數據使用自動字符串轉義( '' "  NULL )。

  這裡的設置將自動影響 $_GEST $_POST $_COOKIE 數組的值。

  若將本指令與magic_quotes_Sybase指令同時打開,則僅將單引號('')轉義為(''''),

  其它特殊字符將不被轉義,即( "  NULL )將保持原樣!!

  建議關閉此特性,並使用自定義的過濾函數。

magic_quotes_runtime = Off

  是否對運行時從外部資源產生的數據使用自動字符串轉義( '' "  NULL )。

  若打開本指令,則大多數函數從外部資源(數據庫,文本文件等)返回數據都將被轉義。

  例如:用SQL查詢得到的數據,用exec()函數得到的數據,等等---www.bianceng.cn

  若將本指令與magic_quotes_Sybase指令同時打開,則僅將單引號('')轉義為(''''),

  其它特殊字符將不被轉義,即( "  NULL )將保持原樣!!

  建議關閉此特性,並視具體情況使用自定義的過濾函數。

  magic_quotes_Sybase = Off

  是否采用Sybase形式的自動字符串轉義(用 '''' 表示 '')

  [PHP-Core-HighLight]

  highlight.bg = "#FFFFFF"

  highlight.comment = "#FF8000"

  highlight.default = "#0000BB"

  highlight.Html = "#000000"

  highlight.keyWord = "#007700"

  highlight.string = "#DD0000"

  語法高亮模式的色彩(通常用於顯示 .PHPs 文件)。

  只要能被<font color=xxx>接受的東西就能正常工作。

  [PHP-Core-Langue]

  short_open_tag = On

  是否允許使用"<? ?>"短標識。否則必須使用"<?PHP ?>"長標識。

  除非你的PHP程序僅在受控環境下運行,且只供自己使用,否則請不要使用短標記。

  如果要和XML結合使用PHP,可以選擇關閉此選項以方便直接嵌入"<?XML ... ?>",

  不然你必須用PHP來輸出:<? echo ''<?XML version="1.0"''; ?>

  本指令也會影響到縮寫形式"<?=",它和"<? echo"等價,要使用它也必須打開短標記。

  asp_tags = Off

  是否允許ASP風格的標記"<% %>",這也會影響到縮寫形式"<%="。

  PHP6中將刪除此指令

  arg_separator.output = "&"

  PHP所產生的URL中用來分隔參數的分隔符。

  另外還可以用"&"或","等等。

  arg_separator.input = "&"

  PHP解析URL中的變量時使用的分隔符列表。

  字符串中的每一個字符都會被當作分割符。

  另外還可以用",&"等等。

  allow_call_time_pass_reference = On

  是否強迫在函數調用時按引用傳遞參數(每次使用此特性都會收到一條警告)。

  PHP反對這種做法,並在將來的版本裡不再支持,因為它影響到了代碼的整潔。

  鼓勵的方法是在函數聲明裡明確指定哪些參數按引用傳遞。

  我們鼓勵你關閉這一選項,以保證你的腳本在將來版本的語言裡仍能正常工作。

auto_globals_jit = On

  是否僅在使用到$_SERVER和$_ENV變量時才創建(而不是在腳本一啟動時就自動創建)。

  如果並未在腳本中使用這兩個數組,打開該指令將會獲得性能上的提升。

  要想該指令生效,必須關閉register_globals和register_long_arrays指令。

  auto_prepend_file =

  auto_append_file =

  指定在主文件之前/後自動解析的文件名。為空表示禁用該特性。

  該文件就像調用了include()函數被包含進來一樣,因此會使用include_path指令的值。

  注意:如果腳本通過exit()終止,那麼自動後綴將不會發生。---www.bianceng.cn

  variables_order = "EGPCS"

  PHP注冊 Environment, GET, POST, CookIE, Server 變量的順序。

  分別用 E, G, P, C, S 表示,按從左到右注冊,新值覆蓋舊值。

  舉例說,設為"GP"將會導致用POST變量覆蓋同名的GET變量,

  並完全忽略 Environment, CookIE, Server 變量。

  推薦使用"GPC"或"GPCS",並使用getenv()函數訪問環境變量。

  register_globals = Off

  是否將 E, G, P, C, S 變量注冊為全局變量。

  打開該指令可能會導致嚴重的安全問題,除非你的腳本經過非常仔細的檢查。

  推薦使用預定義的超全局變量:$_ENV, $_GET, $_POST, $_COOKIE, $_SERVER

  該指令受variables_order指令的影響。

  PHP6中已經刪除此指令。

  register_argc_argv = On

  是否聲明$argv和$argc全局變量(包含用GET方法的信息)。

  建議不要使用這兩個變量,並關掉該指令以提高性能。

  register_long_arrays = On

  是否啟用舊式的長式數組(HTTP_*_VARS)。

  鼓勵使用短式的預定義超全局數組,並關閉該特性以獲得更好的性能。

  PHP6中已經刪除此指令。

  always_populate_raw_post_data = Off

  是否總是生成$HTTP_RAW_POST_DATA變量(原始POST數據)。

  否則,此變量僅在遇到不能識別的MIME類型的數據時才產生。

  不過,訪問原始POST數據的更好方法是 PHP://input 。

  $HTTP_RAW_POST_DATA對於enctype="multipart/form-data"的表單數據不可用。

  unserialize_callback_func =

  如果解序列化處理器需要實例化一個未定義的類,

  這裡指定的回調函數將以該未定義類的名字作為參數被unserialize()調用,

  以免得到不完整的"__PHP_Incomplete_Class"對象。

  如果這裡沒有指定函數,或指定的函數不包含(或實現)那個未定義的類,將會顯示警告信息。

  所以僅在確實需要實現這樣的回調函數時才設置該指令。

  若要禁止這個特性,只需置空即可。

  y2k_compliance = On

  是否強制打開2000年適應(可能在非Y2K適應的浏覽器中導致問題)。

  zend.ze1_compatibility_mode = Off

  是否使用兼容Zend引擎I(PHP 4.x)的模式。

  這將影響對象的復制、構造(無屬性的對象會產生FALSE或0)、比較。

  兼容模式下,對象將按值傳遞,而不是默認的按引用傳遞。

  precision = 14

  浮點型數據顯示的有效位數。

  serialize_precision = 100

  將浮點型和雙精度型數據序列化存儲時的精度(有效位數)。

  默認值能夠確保浮點型數據被解序列化程序解碼時不會丟失數據。
[PHP-Core-OutputControl]

  輸出控制函數很有用,特別是在已經輸出了信息之後再發送HTTP頭的情況下。

  輸出控制函數不會作用於header()或setcookIE()等函數發送的HTTP頭,

  而只會影響類似於echo()函數輸出的信息和嵌入在PHP代碼之間的信息。

  implicit_flush = Off

  是否要求PHP輸出層在每個輸出塊之後自動刷新數據。

  這等效於在每個 print()、echo()、Html塊 之後自動調用flush()函數。

  打開這個選項對程序執行的性能有嚴重的影響,通常只推薦在調試時使用。

  在CLI SAPI的執行模式下,該指令默認為 On 。

  output_buffering = 0

  輸出緩沖區大小(字節)。建議值為4096~8192。

  輸出緩沖允許你甚至在輸出正文內容之後再發送HTTP頭(包括cookIEs)。

  其代價是輸出層減慢一點點速度。

  設置輸出緩沖可以減少寫入,有時還能減少網絡數據包的發送。

  這個參數的實際收益很大程度上取決於你使用的是什麼Web服務器以及什麼樣的腳本。

  output_handler =

  將所有腳本的輸出重定向到一個輸出處理函數。

  比如,重定向到mb_output_handler()函數時,字符編碼將被透明地轉換為指定的編碼。

  一旦你在這裡指定了輸出處理程序,輸出緩沖將被自動打開(output_buffering=4096)。

  注意0: 此處僅能使用PHP內置的函數,自定義函數應在腳本中使用ob_start()指定。

  注意1: 可移植腳本不能依賴該指令,而應使用ob_start()函數明確指定輸出處理函數。

  使用這個指令可能會導致某些你不熟悉的腳本出錯。

  注意2: 你不能同時使用"mb_output_handler"和"ob_iconv_handler"兩個輸出處理函數。

  你也不能同時使用"ob_gzhandler"輸出處理函數和zlib.output_compression指令。

  注意3: 如果使用zlib.output_handler指令開啟zlib輸出壓縮,該指令必須為空。

  [PHP-Core-Directory]

  doc_root =

  SYS

  PHP的"根目錄"。僅在非空時有效。

  如果safe_mode=On,則此目錄之外的文件一概被拒絕。

  如果編譯PHP時沒有指定FORCE_REDIRECT,並且在非IIS服務器上以CGI方式運行,

  則必須設置此指令(參見手冊中的安全部分)。

  替代方案是使用的CGI.force_redirect指令。

  include_path = ".:/path/to/PHP/pear"

  指定一組目錄用於require(), include(), fopen_with_path()函數尋找文件。

  格式和系統的PATH環境變量類似(UNIX下用冒號分隔,Windows下用分號分隔):

  UNIX: "/path1:/path2"

  Windows: "path1;path2"

  在包含路徑中使用''.''可以允許相對路徑,它代表當前目錄。

  user_dir =

  SYS

  告訴PHP在使用 /~username 打開腳本時到哪個目錄下去找,僅在非空時有效。

  也就是在用戶目錄之下使用PHP文件的基本目錄名,例如:"public_Html"

  extension_dir = "/path/to/PHP"

  SYS

  存放擴展庫(模塊)的目錄,也就是PHP用來尋找動態擴展模塊的目錄。

  Windows下默認為"C:/PHP5"

  [PHP-Core-HTTP]

  default_mimetype = "text/Html"

  default_charset = ;"gb2312"

  PHP默認會自動輸出"Content-Type: text/Html" HTTP頭。

  如果將default_charset指令設為"gb2312",

  那麼將會自動輸出"Content-Type: text/Html; charset=gb2312"。

  [PHP-Core-Unicode]

  detect_unicode = On

  尚無文檔

  [PHP-Core-Misc]

  auto_detect_line_endings = Off

  是否讓PHP自動偵測行結束符(EOL)。

  如果的你腳本必須處理Macintosh文件,

  或者你運行在Macintosh上,同時又要處理unix或win32文件,

  打開這個指令可以讓PHP自動偵測EOL,以便fgets()和file()函數可以正常工作。

  但同時也會導致在Unix系統下使用回車符(CR)作為項目分隔符的人遭遇不兼容行為。

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved