下面本篇文章就來給大家介紹一下php報錯級別。有一定的參考價值,有需要的朋友可以參考一下,希望對大家有所幫助。
error_reporting()
用于設(shè)置 PHP 的報錯級別并返回當(dāng)前級別。(PHP 4, PHP 5)
函數(shù)能夠在運(yùn)行時設(shè)置 error_reporting 指令。
PHP 有諸多錯誤級別,使用該函數(shù)可以設(shè)置在腳本運(yùn)行時的級別。
如果沒有設(shè)置可選參數(shù) level, error_reporting() 僅會返回當(dāng)前的錯誤報告級別。
參數(shù)level
新的 error_reporting 級別。 可以是一個位掩碼也可以是一個已命名的常量。
建議使用已命名的常量,以確保兼容將來的版本。 由于錯誤級別的添加、整數(shù)取值范圍的增加,
較久的基于整數(shù)的錯誤級別不會總是和預(yù)期的表現(xiàn)一致。
level 可能的值(php中的報錯級別)
常見:總共大概15個
15個正好對應(yīng)二進(jìn)制的15位。
需要注意的是, 上述表中的字段, 不是一成不變的, 不同的PHP版本, 值可能會不同, 詳細(xì)的請參考 php預(yù)定義常量
任意數(shù)目的以上選項都可以用“或”來連接(用 OR 或 |),這樣可以報告所有需要的各級別錯誤。
例如,下面的代碼關(guān)閉了用戶自定義的錯誤和警告,執(zhí)行了某些操作,然后恢復(fù)到原始的報錯級別:
例:
換算關(guān)系:
E_All: 十進(jìn)制為30719,換成二進(jìn)制為 111011111111111
E_NOTICE:十進(jìn)制為8,換成二進(jìn)制為 1000
~E_NOTICE:對E_NOTICE進(jìn)行取反操作, 變成0111
E_ALL & ~E_NOTICE::E_ALL和 ~E_NOTICE進(jìn)行與操作,變成111011111110111,化成十進(jìn)制就是30711
可以看到E_ALL并不是顯示了所有的錯誤,第12位為0, 這一位的權(quán)重為2的11次方, 為2048,其實就是E_STRICT的值,所以E_ALL是顯示除E_STRICT的所有錯誤級別。
E_ALL & ~E_NOTICE 的二進(jìn)制可以看出,從右至左,第4位和第12位為0,第4位的權(quán)重為2的3次方,為8,就是E_NOTICE的值,所以是顯示除了E_STRICT和E_NOTICE的所有錯誤。
以上就是php的報錯級別有哪些?的詳細(xì)內(nèi)容,更多請關(guān)注創(chuàng)新互聯(lián)成都網(wǎng)站設(shè)計公司其它相關(guān)文章!
另外有需要云服務(wù)器可以了解下創(chuàng)新互聯(lián)scvps.cn,海內(nèi)外云服務(wù)器15元起步,三天無理由+7*72小時售后在線,公司持有idc許可證,提供“云服務(wù)器、裸金屬服務(wù)器、高防服務(wù)器、香港服務(wù)器、美國服務(wù)器、虛擬主機(jī)、免備案服務(wù)器”等云主機(jī)租用服務(wù)以及企業(yè)上云的綜合解決方案,具有“安全穩(wěn)定、簡單易用、服務(wù)可用性高、性價比高”等特點(diǎn)與優(yōu)勢,專為企業(yè)上云打造定制,能夠滿足用戶豐富、多元化的應(yīng)用場景需求。