欧美成人午夜免费全部完,亚洲午夜福利精品久久,а√最新版在线天堂,另类亚洲综合区图片小说区,亚洲欧美日韩精品色xxx

扣丁學堂PHP培訓簡述PHP如何實現(xiàn)PDO異常處理操作

2019-03-15 11:04:53 2741瀏覽

本篇文章小編和大家分享一篇PHP開發(fā)技術問題:PHP如何實現(xiàn)PDO異常處理操作,文中結(jié)合實例分析PHP異常處理的相關原理、用法及操作注意事項,對PHP開發(fā)技術感興趣或者是想要參加PHP培訓的小伙伴就隨小編一起來了解一下吧。


扣丁學堂PHP培訓簡述PHP如何實現(xiàn)PDO異常處理操作



常處理:


PHP:默認為直接報錯

MYSQL:默認為靜默模式,錯就錯,不報錯

PDO:默認為靜默模式,錯就錯,不報錯

以前,當PHP碰到錯誤的時候,會直接報錯,錯誤處理會變得相當麻煩。后來,當錯誤發(fā)生之后,會將錯誤信息不再直接輸出,放到一個類的對象里(PDOException)


使用PDO異常處理,必須滿足兩個條件


1、需要將錯誤處理模式變成異常模式



$pdo->setAttribute(PDO::ATTR_ERRMODE,PDO::ERRMODE_EXCEPTION);



2、所有可能出錯的語句都必須放到錯誤捕捉語句塊里


try{
   //錯誤捕捉語句塊
   //凡是有可能出現(xiàn)錯誤的語句都放在這
   //一旦出錯會立即進入catch語句,把所有的錯誤信息放到PDOexception $e里面
}catch(PDOExecption $e){
   //將錯誤信息進行處理
}


例如


try{
  //連接認證
  $pdo = new PDO('mysql:host=localhost;dbname=project','root','root');
  //設置錯誤處理模式
  $pdo->setAttribute(PDO::ATTR_ERRMODE,PDO::ERRMODE_EXCEPTION);
  //組織SQL
  $sql= "update pro_student set s_age = 123 where s_id = 20";
  $res = $pdo->exec($sql);
}catch(PDOException $e){
  //var_dump($e);
  //告訴用戶在哪個文件的哪一行出現(xiàn)了什么樣的錯誤
  echo '出現(xiàn)異常:<br/>';
  echo '錯誤出現(xiàn)的位置:' . $e->getFile() . $e->getLine() . '<br/>';
  echo '錯誤原因:' . $e->getMessage();
  var_dump($e->getTrace());//獲取完整的錯誤數(shù)據(jù)
  exit;
}


有的時候,如果數(shù)據(jù)執(zhí)行沒有任何錯誤,但是就是不符合指定的業(yè)務邏輯。一旦出現(xiàn)業(yè)務邏輯錯誤,異常是沒有辦法捕捉(異常只捕捉語法錯誤),一般認為的去通過判斷語句的執(zhí)行(結(jié)果),主動拋出異常,從而結(jié)束錯誤程序的運行。


語法:throw new PDOException;


$sql = "select * from pro_student where s_id = 20";
$stmt = $pdo->query($sql);
if($stmt->fetchColumn(4) > 100) throw new PDOException; //拋出異常,立馬跳轉(zhuǎn)到catch語句塊
else{
  echo '沒有問題';
}


以上就是扣丁學堂PHP在線學習小編給大家分享的PHP如何實現(xiàn)PDO異常處理操作,希望對小伙伴們有所幫助,想要了解更多內(nèi)容的小伙伴可以登錄扣丁學堂官網(wǎng)咨詢。想要學好PHP開發(fā)小編給大家推薦口碑良好的扣丁學堂,扣丁學堂有專業(yè)老師制定的PHP學習路線圖輔助學員學習,此外還有與時俱進的PHP視頻教程供大家學習,想要學好PHP開發(fā)技術的小伙伴快快行動吧??鄱W堂PHP技術交流群:374332265。


扣丁學堂PHP培訓


【關注微信公眾號獲取更多學習資料】

 

 

查看更多關于“php培訓資訊”的相關文章>>




標簽: PHP培訓 PHP基礎教程 PHP學習視頻 PHP教學視頻 PHP入門教程 PHP教程視頻 PHP在線學習 PHP在線視頻 PHP在線教程 扣丁學堂PHP培訓

熱門專區(qū)

暫無熱門資訊

課程推薦

微信
微博
15311698296

全國免費咨詢熱線

郵箱:codingke@1000phone.com

官方群:148715490

北京千鋒互聯(lián)科技有限公司版權所有   北京市海淀區(qū)寶盛北里西區(qū)28號中關村智誠科創(chuàng)大廈4層
京ICP備2021002079號-2   Copyright ? 2017 - 2022
返回頂部 返回頂部