真实的国产乱ⅩXXX66竹夫人,五月香六月婷婷激情综合,亚洲日本VA一区二区三区,亚洲精品一区二区三区麻豆

成都創(chuàng)新互聯(lián)網(wǎng)站制作重慶分公司

php設(shè)置錯誤級別的方法

這篇文章主要介紹了php設(shè)置錯誤級別的方法,具有一定借鑒價值,需要的朋友可以參考下。希望大家閱讀完這篇文章后大有收獲。下面讓小編帶著大家一起了解一下。

在遠(yuǎn)安等地區(qū),都構(gòu)建了全面的區(qū)域性戰(zhàn)略布局,加強(qiáng)發(fā)展的系統(tǒng)性、市場前瞻性、產(chǎn)品創(chuàng)新能力,以專注、極致的服務(wù)理念,為客戶提供網(wǎng)站制作、成都網(wǎng)站制作 網(wǎng)站設(shè)計(jì)制作按需設(shè)計(jì),公司網(wǎng)站建設(shè),企業(yè)網(wǎng)站建設(shè),成都品牌網(wǎng)站建設(shè),成都營銷網(wǎng)站建設(shè),成都外貿(mào)網(wǎng)站制作,遠(yuǎn)安網(wǎng)站建設(shè)費(fèi)用合理。

php錯誤級別設(shè)置

在php.ini中可以設(shè)置服務(wù)器對錯誤的報(bào)警級別。在默認(rèn)情況下,php將報(bào)告除了通知之外的所有錯誤。錯誤報(bào)告級別是通過一些預(yù)定義的常量來設(shè)置的,

語法:

int error_reporting ( [int level] )

如果參數(shù) level 未指定,當(dāng)前報(bào)錯級別將被返回。下面幾項(xiàng)是 level 可能的值:

php設(shè)置錯誤級別的方法

在php.ini文件中,默認(rèn)的報(bào)告是除了通知之外的所有錯誤,如下語句設(shè)定:

error_reporting = E_ALL & ~ (E_NOTICE)

在上面的表達(dá)式中,符號"&"表示幾個條件這間的并列,而"~"表示否定,即NOT的含義。如果想忽略警告信息,可以設(shè)定如下語句:

error_reporting = E_ALL & ~(E_NOTICE) & ~(E_WARNING)

在php.ini文件中,和錯誤有關(guān)的設(shè)置有如下幾個:

(1)error_reporting,設(shè)定錯誤級別

(2)display_errors,是否顯示錯誤報(bào)告,設(shè)置為ON則打開,設(shè)置為OFF則關(guān)閉所有錯誤提示

(3)log_errors,默認(rèn)設(shè)置為OFF,是否記錄錯誤日志;

(4)track_errors,默認(rèn)設(shè)置為OFF,該選項(xiàng)可以幫助解決代碼中的錯誤,而不是讓PHP提供其默認(rèn)的功能。

PHP的錯誤報(bào)告
php.ini 文件中有許多配置設(shè)置。您應(yīng)當(dāng)已經(jīng)設(shè)置好自己的php.ini文件并把它放在合適的目錄中,就像在Linux上安裝PHP和Apache2的文檔說明中所示的那樣。在調(diào)試 PHP 應(yīng)用程序時,應(yīng)當(dāng)知道兩個配置變量。下面是這兩個變量及其默認(rèn)值:

display_errors = Off
error_reporting = E_ALL

通過在 php.ini 文件中搜索它們,可以發(fā)現(xiàn)這兩個變量當(dāng)前的默認(rèn)值。display_errors 變量的目的很明顯 —— 它告訴 PHP 是否顯示錯誤。默認(rèn)值是 Off。但是,要讓開發(fā)過程更加輕松,請把這個值設(shè)為 On:

display_errors = On

error_reporting變量的默認(rèn)值是 E_ALL。這個設(shè)置會顯示從不良編碼實(shí)踐到無害提示到出錯的所有信息。E_ALL 對于開發(fā)過程來說有點(diǎn)太細(xì),因?yàn)樗谄聊簧蠟橐恍┬∈拢ɡ缱兞课闯跏蓟┮诧@示提示,會搞糟瀏覽器的輸出。我只想看到錯誤和不良編碼實(shí)踐,但是不想看到 無害的提示。所以,請用以下值代替 error_reporting 的默認(rèn)值:

error_reporting = E_ALL & ~E_NOTICE

重新啟動 Apache,就全部設(shè)置好了。接下來,將學(xué)習(xí)如何在 Apache 上做同樣的事。

服務(wù)器上的錯誤報(bào)告

依賴于 Apache 正在做的工作,在 PHP 中打開錯誤報(bào)告可能沒法工作,因?yàn)樵谟?jì)算機(jī)上可能有多個 PHP 版本。有時很難區(qū)分 Apache正在使用哪個 PHP 版本,因?yàn)?Apache 只能查看一個 php.ini 文件。不知道 Apache 正在使用哪個 php.ini 文件配置自己是一個安全問題。但是,有一種方法可以在 Apache 中配置 PHP 變量,從而保證設(shè)置了正確的出錯級別。而且,最好知道如何在服務(wù)器端設(shè)置這些配置變量,以否決或搶占 php.ini 文件,從而提供更高級別的安全性。

在配置 Apache 時,應(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ù)器上測試錯誤報(bào)告。

關(guān)于error_reporting()這個函數(shù),它是可以屏蔽到一些錯誤信息,但是PHP 核心造成的錯誤,是無法屏蔽的,因?yàn)镻HP 核心造成的錯誤會直接導(dǎo)致PHP文件編譯失敗,因?yàn)闀鴮懜袷經(jīng)]有按照PHP的編碼規(guī)則寫而造成的錯誤,是無法屏蔽的。

常見的如下:

// Turn off all error reporting;關(guān)閉所有的錯誤
error_reporting(0);
// Report simple running errors;報(bào)告一個簡單的運(yùn)行錯誤
error_reporting(E_ERROR | E_WARNING | E_PARSE);
// Reporting E_NOTICE can be good too (to report uninitialized
// variables or catch variable name misspellings …);包括報(bào)告一些未初始化的變量或捕捉變量名的拼寫錯誤
error_reporting(E_ERROR | E_WARNING | E_PARSE | E_NOTICE);
// Report all errors except E_NOTICE
// This is the default value set in php.ini;報(bào)告所有的錯誤但不包括E_NOTICE
error_reporting(E_ALL ^ E_NOTICE);
// Report all PHP errors (bitwise 63 may be used in PHP 3);報(bào)告所有的錯誤
error_reporting(E_ALL);
// Same as error_reporting(E_ALL);同上
ini_set(’error_reporting’, E_ALL);

感謝你能夠認(rèn)真閱讀完這篇文章,希望小編分享php設(shè)置錯誤級別的方法內(nèi)容對大家有幫助,同時也希望大家多多支持創(chuàng)新互聯(lián),關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道,遇到問題就找創(chuàng)新互聯(lián),詳細(xì)的解決方法等著你來學(xué)習(xí)!


分享名稱:php設(shè)置錯誤級別的方法
網(wǎng)頁網(wǎng)址:http://weahome.cn/article/jpcjsg.html

其他資訊

在線咨詢

微信咨詢

電話咨詢

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部