這期內(nèi)容當(dāng)中小編將會給大家?guī)碛嘘P(guān)如何在php中顯示錯誤級別,文章內(nèi)容豐富且以專業(yè)的角度為大家分析和敘述,閱讀完這篇文章希望大家可以有所收獲。
創(chuàng)新互聯(lián)公司長期為1000+客戶提供的網(wǎng)站建設(shè)服務(wù),團(tuán)隊從業(yè)經(jīng)驗10年,關(guān)注不同地域、不同群體,并針對不同對象提供差異化的產(chǎn)品和服務(wù);打造開放共贏平臺,與合作伙伴共同營造健康的互聯(lián)網(wǎng)生態(tài)環(huán)境。為南召企業(yè)提供專業(yè)的網(wǎng)站設(shè)計、網(wǎng)站建設(shè),南召網(wǎng)站改版等技術(shù)服務(wù)。擁有10余年豐富建站經(jīng)驗和眾多成功案例,為您定制開發(fā)。
警告:生產(chǎn)環(huán)境永遠(yuǎn)都不要顯示任何錯誤信息!
顯示錯誤(display_errors)和錯誤報告(error_reporting)是兩回事。PHP 腳本發(fā)生錯誤時,可以根據(jù)設(shè)置選擇是否報告這個錯誤(記錄到錯誤日志中),如果設(shè)置中開啟了 display_errors,則同時把錯誤信息打印到屏幕上。
ini_set() 函數(shù)
對于 PHP,可以通過 php.ini
文件設(shè)置各種指令。但有時候需要在腳本運(yùn)行時設(shè)置指令,那就需要 ini_set()
函數(shù)了。
string ini_set ( string $varname , string $newvalue )
設(shè)置指定配置選項的值。這個選項會在腳本運(yùn)行時保持新的值,并在腳本結(jié)束時恢復(fù)。
例如:
ini_set('error_reporting', E_ALL); ini_set('display_errors', 'on');
error_reporting() 函數(shù)
error_reporting()
函數(shù)能夠在運(yùn)行時設(shè)置 error_reporting 指令。 PHP 有諸多錯誤級別,使用該函數(shù)可以設(shè)置在腳本運(yùn)行時的級別。如果沒有設(shè)置可選參數(shù), error_reporting() 會返回當(dāng)前的錯誤報告級別。
PHP7.2 的默認(rèn)值為 E_ALL & ~E_NOTICE & ~E_STRICT & ~E_DEPRECATED
。
在開發(fā)階段建議啟用 E_NOTICE 顯示更多可能的錯誤。
修改 php.ini 配置文件
error_reporting = E_ALL # 報告所有錯誤 display_errors = On # 顯示錯誤PHP 預(yù)定義的錯誤常量
官網(wǎng)定義了所有的 錯誤常量,常用的有:
E_STRICT (integer) PHP 對代碼的修改建議,以確保代碼具有最佳的互操作性和向前兼容性。
E_ALL (integer) E_STRICT外的所有錯誤和警告信息。
E_ERROR (integer) 致命的運(yùn)行時錯誤。這類錯誤一般是不可恢復(fù)的情況,例如內(nèi)存分配導(dǎo)致的問題。后果是導(dǎo)致腳本終止不再繼續(xù)運(yùn)行。
E_WARNING (integer) 運(yùn)行時警告 (非致命錯誤)。僅給出提示信息,但是腳本不會終止運(yùn)行。
E_PARSE (integer) 編譯時語法解析錯誤。解析錯誤僅僅由分析器產(chǎn)生。
E_NOTICE (integer) 運(yùn)行時通知。表示腳本遇到可能會表現(xiàn)為錯誤的情況,但是在可以正常運(yùn)行的腳本里面也可能會有類似的通知。
上述就是小編為大家分享的如何在php中顯示錯誤級別了,如果剛好有類似的疑惑,不妨參照上述分析進(jìn)行理解。如果想知道更多相關(guān)知識,歡迎關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道。