欧美亚洲中文,在线国自产视频,欧洲一区在线观看视频,亚洲综合中文字幕在线观看

      1. <dfn id="rfwes"></dfn>
          <object id="rfwes"></object>
        1. 站長資訊網(wǎng)
          最全最豐富的資訊網(wǎng)站

          帶你一起了解PHP的錯誤類型和錯誤級別

          在之前的文章中給大家?guī)砹恕段宸昼妿憧炊甈HP中的異常處理是什么情況》,其中詳細(xì)介紹了有關(guān)PHP異常處理類的問題,本篇文章我們一起來繼續(xù)看一看PHP錯誤處理的相關(guān)知識,PHP的錯誤類型和PHP的錯誤級別,希望對大家有幫助!

          帶你一起了解PHP的錯誤類型和錯誤級別

          程序員再開發(fā)過程中難免有些失誤,或者由其他的原因也會造成錯誤的發(fā)生,那這時候我們就有必要了解一下PHP中有哪些錯誤類型以及有哪些錯誤級別了。大家也可以點(diǎn)擊免費(fèi)的《php錯誤處理》教學(xué)視頻來學(xué)習(xí)相關(guān)的知識。

          PHP錯誤類型

          PHP 程序的錯誤發(fā)生一般分為三類,它們分別是語法錯誤、執(zhí)行時錯誤和邏輯錯誤。

          • 語法錯誤

          語法錯誤是在編程中最容易碰到也是最容易解決的一種錯誤,例如:遺漏一個分號時就會顯示錯誤信息。這種錯誤會停止程序的執(zhí)行,并顯示出錯信息。我們可以根據(jù)錯誤信息改正程序,然后重新執(zhí)行。

          語法錯誤可以說是我們在編程過程中最容易碰到的一種錯誤類型了,同時我覺得他也是最容易解決的一種錯誤;例如:輸入時忘記輸入了一個分號或者函數(shù)語法弄錯了。

          <?php     $a = 1     echo $a; ?>

          在上述示例中,第二行最后少了一個分號,輸出結(jié)果出現(xiàn)錯誤。

          添加分號之后程序正常運(yùn)行,輸出結(jié)果為1。由此我們可以看出,當(dāng)語法錯誤時,程序會停止向下繼續(xù)執(zhí)行,當(dāng)語法錯誤解決之后,程序才可以繼續(xù)執(zhí)行。

          • 運(yùn)行時錯誤

          運(yùn)行時錯誤就是再程序運(yùn)行過程中出現(xiàn)了錯誤,這時候需要注意的是,語法并沒有錯誤,但是再執(zhí)行的過程中,PHP會警告你程序有不合理的地方,與語法錯誤不同的是,程序會繼續(xù)向下運(yùn)行。

          示例如下:

          <?php     $a = 1;     $b = 0;     $c = $a / $b;     echo "$a / $b = $c"; ?>

          在上述示例中,語法并沒有錯誤,但是0不能作為除數(shù),輸出結(jié)果:

          帶你一起了解PHP的錯誤類型和錯誤級別

          • 邏輯錯誤

          邏輯錯誤的程序會正常的執(zhí)行,但是輸出的結(jié)果卻不對,其根本原因發(fā)生在我們寫的代碼上,程序執(zhí)行過程中沒有報警信息。示例如下:

          <?php     $a = 1;     $b = 2;     if($a = $b){         echo '$a = $b';     }else{         echo '$a != $b';     } ?>

          輸出結(jié)果:

          帶你一起了解PHP的錯誤類型和錯誤級別

          由上述示例我們可以看出,輸出結(jié)果明顯不對,不符合邏輯,出現(xiàn)邏輯錯誤時,是沒有報警信息的。這需要我們一定要提高警惕,不要出現(xiàn)邏輯錯誤。

          拓展知識:PHP錯誤級別

          PHP中既有錯誤類型,也定義了錯誤級別,可以在php.ini中定義錯誤級別。(點(diǎn)擊《PHP如何上傳文件?看完就明白了!》查看如何找到php.ini)

          PHP中的錯誤類型如下所示:

          1 —E_ERROR—致命的運(yùn)行時錯誤,一般是不可恢復(fù)的情況,例如內(nèi)存分配導(dǎo)致的問題,后果是導(dǎo)致腳本終止、不再繼續(xù)運(yùn)行。

          2 — E_WARNING — 運(yùn)行時警告(非致命錯誤),僅給出提示信息,但是腳本不會終止運(yùn)行。

          4 — E_PARSE — 編譯時語法解析錯誤,僅由分析器產(chǎn)生。

          8 — E_NOTICE —運(yùn)行時通知,表示腳本遇到可能會表現(xiàn)為錯誤的情況,但是在可以正常運(yùn)行的腳本里面也可能會有類似的通知。

          16 — E_CORE_ERROR — 在 PHP 初始化啟動過程中發(fā)生的致命錯誤,類似 E_ERROR,但是是由 PHP 引擎核心產(chǎn)生的。

          64 — E_COMPILE_ERROR — 致命編譯時錯誤,類似 E_ERROR,但是是由 Zend 腳本引擎產(chǎn)生的。

          128 — E_COMPILE_WARNING — 編譯時警告(非致命錯誤),類似 E_WARNING,但是是由 Zend 腳本引擎產(chǎn)生的。 。

          1024 — E_STRICT — 啟用 PHP 對代碼的修改建議,以確保代碼具有最佳的互操作性和向前兼容性。

          8192 — E_DEPRECATED — 運(yùn)行時通知,啟用后將會對在未來版本中可能無法正常工作的代碼給出警告。

          16384 — E_USER_DEPRECATED — 用戶產(chǎn)生的警告信息,類似 E_DEPRECATED,但是是由用戶自己在代碼中使用 PHP 函數(shù) trigger_error() 來產(chǎn)生的。

          30719 — E_ALL — E_STRICT 除外的所有錯誤和警告信息。

          想要了解

          贊(0)
          分享到: 更多 (0)
          網(wǎng)站地圖   滬ICP備18035694號-2    滬公網(wǎng)安備31011702889846號