多多色-多人伦交性欧美在线观看-多人伦精品一区二区三区视频-多色视频-免费黄色视屏网站-免费黄色在线

國(guó)內(nèi)最全I(xiàn)T社區(qū)平臺(tái) 聯(lián)系我們 | 收藏本站
阿里云優(yōu)惠2
您當(dāng)前位置:首頁(yè) > php開(kāi)源 > php教程 > php的異常處理基礎(chǔ)方法

php的異常處理基礎(chǔ)方法

來(lái)源:程序員人生   發(fā)布時(shí)間:2014-01-27 00:05:18 閱讀次數(shù):3095次

下面來(lái)介紹一下關(guān)于php中異常處理的方法介紹,有需要學(xué)習(xí)的異常處理的朋友可參考本教程.

以下是引用片段:

1.允許一個(gè)方法給出一個(gè)出錯(cuò)標(biāo)記給客戶(hù)代碼 

2.提供程序錯(cuò)誤的詳細(xì)信息 

3.讓你同時(shí)判斷多個(gè)出錯(cuò)條件,將你的錯(cuò)誤報(bào)告和程序處理流程分開(kāi).

4.返回值必須是獨(dú)立的類(lèi)型,不會(huì)與正常返回的類(lèi)型相混淆

兩個(gè)實(shí)例掌握PHP異常處理

例【1】用 try...catch

實(shí)例代碼如下:

  1. /* PDO連接mysql數(shù)據(jù)庫(kù),如果沒(méi)看過(guò)PDO,先看下PDO的構(gòu)造函數(shù),要不跳過(guò)例1看例2 */  
  2. $dsn = 'mysql:host=localhost;dbname=testdb';  
  3. $user = 'dbuser';  
  4. $password = 'dbpass';  
  5. try {  
  6. $dbh = new PDO($dsn$user$password); //創(chuàng)建數(shù)據(jù)庫(kù)連接對(duì)象容易出現(xiàn)異常  
  7. echo '如果上面出現(xiàn)異常就不能顯示我了';  
  8. } catch (PDOException $e) {  
  9. echo 'Connection failed: ' . $e->__toString();  
  10. }  
  11. ?> 

實(shí)例代碼如下:

  1. <?php  
  2. //例[2] try..cathc 和 throw一起用  
  3. try {  
  4. $error = '我拋出異常信息,并且跳出try塊';  
  5. if(is_dir('./tests')){  
  6. echo 'do sth.';  
  7. }else{  
  8. throw new Exception($error,12345);  
  9. }  
  10. echo '上面有異常的話(huà)就輪不到我了!~<br />',"n";  
  11. } catch (Exception $e) {  
  12. echo '捕獲異常: '$e->getMessage(),$e->getCode(), "n<br />"//顯示$error和123456  
  13. }  
  14. echo '繼續(xù)執(zhí)行';  
  15. ?> 

上面一個(gè)朋友說(shuō)的,下面我自己來(lái)寫(xiě)了點(diǎn)程序練習(xí)一下:

實(shí)例代碼如下:

  1. $a = 20; 
  2. // 使用常規(guī)catch的例子 
  3. try  
  4.   if($a == 1) 
  5.   { 
  6.     throw new Exception("I am 1", 1); 
  7.   } 
  8.   elseif ($a == 2) 
  9.   { 
  10.     throw new Exception("I am 2", 3); 
  11.   } 
  12.   elseif ($a == 3) 
  13.   { 
  14.     throw new Exception("I am 3", 3); 
  15.   } 
  16.   elseif ($a == 4) 
  17.   { 
  18.     throw new Exception("I am 4", 4); 
  19.   } 
  20.   else 
  21.   { 
  22.     throw new Exception("Who am I ?", 0); 
  23.   } 
  24. catch (Exception $e
  25.   if($e->getCode() == 1) 
  26.   { 
  27.     echo "1 : ".$e
  28.   } 
  29.   elseif ($e->getCode() == 2) 
  30.   { 
  31.     echo "2 : ".$e
  32.   } 
  33.   elseif ($e->getCode() == 3) 
  34.   { 
  35.     echo "3 : ".$e
  36.   } 
  37.   elseif ($e->getCode() == 4) 
  38.   { 
  39.     echo "4 : ".$e
  40.   } 
  41.   else 
  42.   { 
  43.     echo "0 : ".$e
  44.   } 
  45. echo " 
  46.  
  47. -------------------------------------------------------------------------------- 
  48. "; 
  49. // 使用不同的擴(kuò)展異常類(lèi)的例子 
  50. class A extends Exception{}; 
  51. class B extends Exception{}; 
  52. try 
  53.  if($a == 1) 
  54.   { 
  55.     throw new A("I am A", 1); 
  56.   } 
  57.   elseif ($a == 2) 
  58.   { 
  59.     throw new B("I am B", 2); 
  60.   } 
  61.   else 
  62.   { 
  63.     throw new Exception("Who am I ?", 0); 
  64.   } 
  65. catch (A $e
  66.   echo "1 : ".$e
  67. catch (B $e
  68.   echo "2 : ".$e
  69. catch (Exception $e
  70.   echo "0 : ".$e
  71. ?>  

輸出如下:

以下是引用片段:

0 : exception 'Exception' with message 'Who am I ?' in |

D:WebPHPWWWnewtest.php:24 Stack trace: #0 {main}

----------------------------------------------------------------------------

0 : exception 'Exception' with message 'Who am I ?' in D:WebPHPWWWnewtest.php:69 Stack trace: #0 {main} 

生活不易,碼農(nóng)辛苦
如果您覺(jué)得本網(wǎng)站對(duì)您的學(xué)習(xí)有所幫助,可以手機(jī)掃描二維碼進(jìn)行捐贈(zèng)
程序員人生
------分隔線(xiàn)----------------------------
分享到:
------分隔線(xiàn)----------------------------
關(guān)閉
程序員人生
主站蜘蛛池模板: 亚洲精品国产第一区二区多人 | 在线观看噜噜噜私人影院 | 亚洲特一级毛片 | 欧美视频在线观看爱爱 | 中文字幕在线视频一区 | 久草在线视频福利资源站 | 成人性a激情免费视频 | 国产成人午夜91精品麻豆剧场 | 国产观看精品一区二区三区 | 亚洲黄色高清 | h小视频在线 | 99久久免费国内精品 | 免费高清不卡毛片在线看 | 免费视频中文字幕 | 成人欧美日本免费观看 | 欧美久久伊人 | 欧美人马交 | 中文字幕亚洲欧美一区 | 最新的国产成人精品2022 | 91嫩草私人成人亚洲影院 | 中文字幕一区二区三区亚洲精品 | 日韩一区二区久久久久久 | 在线观看国产亚洲 | 亚洲人人视频 | www.九色| 亚洲精品国产精品国自产网站 | 有毛片毛毛片毛片毛片 | 亚洲一区二区精品视频 | 午夜精品国产爱在线观看不卡 | 伊人久久大香现线蕉 | 性888xxxx入欧美 | 性丰满妇女free性性性 | 2019免费视频 | freexxx性欧美极品另类 | 黄色毛片播放 | 国产成人黄网址在线视频 | 中文字幕18页 | 久久福利网 | 日本xxxx韩国护士 | 欧美另类在线观看 | 亚洲欧美日韩人成 |