|
error與exception的區(qū)別查閱網(wǎng)上資料大多是Java的解釋,貌似php的異常處理過程與Java差不多
Java中的Object繼承結(jié)構(gòu)如下:
Object---->Throwable--------> Exception ----> RuntimeException | Error
Error都是unchecked類型 Exception分為checked 與 unchecked類型
且把異常與錯(cuò)誤都當(dāng)作程序運(yùn)行不正常的現(xiàn)象來看待
如果區(qū)分異常與錯(cuò)誤的話:
異常:非致命的。try{}catche(Exception e){} 執(zhí)行中的try模塊是測(cè)試運(yùn)行,代碼在運(yùn)行過程中出現(xiàn)錯(cuò)誤(非致命錯(cuò)誤)執(zhí)行catche
異常的作用類似于下面的這些代碼:
if(mysql_connect('127.0.0.1','root','321321')){ echo '連接數(shù)據(jù)庫成功'; // other code...}else{ echo '連接數(shù)據(jù)庫錯(cuò)誤'; return false;}
使用異常處理的情況可以很輕松的處理異常情況。如下面的代碼可以一次性處理很多的異常情況
try{ mysql_connect('127.0.0.1','root','321321'); // other code you want to execute}catche(Exception $e){ print_r($e);}
錯(cuò)誤:致命的。一般都是程序語法錯(cuò)誤或者用戶級(jí)別的提示錯(cuò)誤
錯(cuò)誤與異常中都分為 checked與unchecked
checked 是可以讓用戶處理的,unchecked是不能被處理的
php中 Exception ,用戶級(jí)別的錯(cuò)誤可被用戶處理 (client code) 其他的錯(cuò)誤是不能被用戶處理的
此外,Java中還有個(gè) RuntimeException 是不能被用戶處理的。這個(gè)是運(yùn)行級(jí)別的異常
php技術(shù):php中error與exception的區(qū)別及應(yīng)用,轉(zhuǎn)載需保留來源!
鄭重聲明:本文版權(quán)歸原作者所有,轉(zhuǎn)載文章僅為傳播更多信息之目的,如作者信息標(biāo)記有誤,請(qǐng)第一時(shí)間聯(lián)系我們修改或刪除,多謝。