亚洲av成人无遮挡网站在线观看,少妇性bbb搡bbb爽爽爽,亚洲av日韩精品久久久久久,兔费看少妇性l交大片免费,无码少妇一区二区三区

  免費(fèi)注冊 查看新帖 |

Chinaunix

  平臺 論壇 博客 文庫
最近訪問板塊 發(fā)新帖
查看: 1695 | 回復(fù): 0
打印 上一主題 下一主題

php error_reporting 詳解 [復(fù)制鏈接]

論壇徽章:
0
跳轉(zhuǎn)到指定樓層
1 [收藏(0)] [報(bào)告]
發(fā)表于 2008-09-01 11:54 |只看該作者 |倒序?yàn)g覽

error_reporting
設(shè)定錯(cuò)誤訊息回報(bào)的等級。
語法: int error_reporting(int [level]);
傳回值: 整數(shù)
函式種類: PHP 系統(tǒng)功能
內(nèi)容說明
本函式用來設(shè)定錯(cuò)誤訊息回報(bào)的等級,參數(shù) level 是一個(gè)整數(shù)的位元遮罩 (bitmask),見下表。
value constant
1 E_ERROR
2 E_WARNING
4 E_PARSE
8 E_NOTICE
16 E_CORE_ERROR
32 E_CORE_WARNING
64 E_COMPILE_ERROR
128 E_COMPILE_WARNING
256 E_USER_ERROR
512 E_USER_WARNING
1024 E_USER_NOTICE
2047 E_ALL
2048 E_STRICT
E_NOTICE 表示一般情形不記錄,只有程式有錯(cuò)誤情形時(shí)才用到,例如企圖存取一個(gè)不存在的變數(shù),或是呼叫 stat() 函式檢視不存在的檔案。
E_WARNING 通常都會顯示出來,但不會中斷程式的執(zhí)行。這對除錯(cuò)很有效。例如:用有問題的常規(guī)表示法呼叫 ereg()。
E_ERROR 通常會顯示出來,亦會中斷程式執(zhí)行。意即用這個(gè)遮罩無法追查到記憶體配置或其它的錯(cuò)誤。
E_PARSE 從語法中剖析錯(cuò)誤。
E_CORE_ERROR 類似 E_ERROR,但不包括 PHP 核心造成的錯(cuò)誤。
E_CORE_WARNING 類似 E_WARNING,但不包括 PHP 核心錯(cuò)誤警告。
PHP 的錯(cuò)誤報(bào)告
  php.ini 文件中有許多配置設(shè)置。您應(yīng)當(dāng)已經(jīng)設(shè)置好自己的 php.ini 文件并把它放在合適的目錄中,就像在 Linux 上安裝 PHP 和 Apache 2 的文檔說明中所示的那樣(請參閱 參考資料)。在調(diào)試 PHP 應(yīng)用程序時(shí),應(yīng)當(dāng)知道兩個(gè)配置變量。下面是這兩個(gè)變量及其默認(rèn)值:
display_errors = Off
error_reporting = E_ALL
  通過在 php.ini 文件中搜索它們,可以發(fā)現(xiàn)這兩個(gè)變量當(dāng)前的默認(rèn)值。display_errors 變量的目的很明顯 —— 它告訴 PHP 是否顯示錯(cuò)誤。默認(rèn)值是 Off。但是,要讓開發(fā)過程更加輕松,請把這個(gè)值設(shè)為 On:
display_errors = On
  error_reporting 變量的默認(rèn)值是 E_ALL。這個(gè)設(shè)置會顯示從不良編碼實(shí)踐到無害提示到出錯(cuò)的所有信息。E_ALL 對于開發(fā)過程來說有點(diǎn)太細(xì),因?yàn)樗谄聊簧蠟橐恍┬∈拢ɡ缱兞课闯跏蓟┮诧@示提示,會搞糟瀏覽器的輸出。我只想看到錯(cuò)誤和不良編碼實(shí)踐,但是不想看到無害的提示。所以,請用以下值代替 error_reporting 的默認(rèn)值:
error_reporting = E_ALL & ~E_NOTICE
  重新啟動 Apache,就全部設(shè)置好了。接下來,將學(xué)習(xí)如何在 Apache 上做同樣的事。
  服務(wù)器上的錯(cuò)誤報(bào)告
  依賴于 Apache 正在做的工作,在 PHP 中打開錯(cuò)誤報(bào)告可能沒法工作,因?yàn)樵谟?jì)算機(jī)上可能有多個(gè) PHP 版本。有時(shí)很難區(qū)分 Apache 正在使用哪個(gè) PHP 版本,因?yàn)?Apache 只能查看一個(gè) php.ini 文件。不知道 Apache 正在使用哪個(gè) php.ini 文件配置自己是一個(gè)安全問題。但是,有一種方法可以在 Apache 中配置 PHP 變量,從而保證設(shè)置了正確的出錯(cuò)級別。
  而且,最好知道如何在服務(wù)器端設(shè)置這些配置變量,以否決或搶占 php.ini 文件,從而提供更高級別的安全性。
在配置 Apache 時(shí),應(yīng)該已經(jīng)接觸過 /conf/httpd.conf 中 http.conf 文件中的基本配置。
  要做在 php.ini 文件中已經(jīng)做過的事,請把下列各行添加到 httpd.conf,覆蓋任何 php.ini 文件:
php_flag   display_errors         on
php_value error_reporting       2039
  這會覆蓋在 php.ini 文件中為 display_errors 已經(jīng)設(shè)置的標(biāo)志,以及 error_reporting 的值。值 2039 代表 E_ALL & ~E_NOTICE。如果愿意采用 E_ALL,請把值設(shè)為 2047。同樣,還是要重啟 Apache。
  接下來,要在服務(wù)器上測試錯(cuò)誤報(bào)告。
    關(guān)于error_reporting()這個(gè)函數(shù),它是可以屏蔽到一些錯(cuò)誤信息,但是PHP 核心造成的錯(cuò)誤,是無法屏蔽的,因?yàn)镻HP 核心造成的錯(cuò)誤會直接導(dǎo)至PHP文件編譯失敗,樓主的代碼因?yàn)闀鴮懜袷經(jīng)]有按照PHP的編碼規(guī)則寫而造成的錯(cuò)誤,是無法屏蔽的
* For now, avoid warnings of E_STRICT mode
* (this must be done before function definitions)
*/
if (defined('E_STRICT')) {
    $old_error_reporting = error_reporting(



本文來自ChinaUnix博客,如果查看原文請點(diǎn):http://blog.chinaunix.net/u/31179/showart_1161077.html
您需要登錄后才可以回帖 登錄 | 注冊

本版積分規(guī)則 發(fā)表回復(fù)

  

北京盛拓優(yōu)訊信息技術(shù)有限公司. 版權(quán)所有 京ICP備16024965號-6 北京市公安局海淀分局網(wǎng)監(jiān)中心備案編號:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年舉報(bào)專區(qū)
中國互聯(lián)網(wǎng)協(xié)會會員  聯(lián)系我們:huangweiwei@itpub.net
感謝所有關(guān)心和支持過ChinaUnix的朋友們 轉(zhuǎn)載本站內(nèi)容請注明原作者名及出處

清除 Cookies - ChinaUnix - Archiver - WAP - TOP