異常處理:
php:預設為直接報錯
mysql:預設為靜默模式,錯就錯,不報錯
pdo:預設為靜默模式,錯就錯,不報錯
以前,當php碰到錯誤的時候,會直接報錯,錯誤處理會變得相當麻煩。後來,當錯誤發生之後,會將錯誤資訊不再直接輸出,放到乙個類的物件裡(pdoexception)
要使用pdo異常處理,必須滿足兩個條件
1、需要將錯誤處理模式變成異常模式
$pdo->setattribute(pdo::attr_errmode,pdo::errmode_exception);
2、所有可能出錯的語句都必須放到錯誤捕捉語句塊裡
trycatch(pdoexecption $e)
catch(pdoexception $e
)有的時候,如果資料執行沒有任何錯誤,但是就是不符合指定的業務邏輯。一旦出現業務邏輯錯誤,異常是沒有辦法捕捉(異常只捕捉語法錯誤),一般認為的去通過判斷語句的執行(結果),主動丟擲異常,從而結束錯誤程式的執行。
語法:throw new pdoexception;
$sql = "select * from pro_student where s_id = 20";$stmt = $pdo->query($sql
);
if($stmt->fetchcolumn(4) > 100) throw
newpdoexception; //丟擲異常,立馬跳轉到catch語句塊
else
php PDO異常處理詳解
異常處理 php 預設為直接www.cppcns.com報錯 mysql 預設為靜默模式,錯就錯,不報錯 pdo 預設為靜默模式,錯就錯,不報錯 以前,當php碰到錯誤的時候,會直接報錯,錯誤處理會變得相當麻煩。後來,當錯誤發生之後,會將錯誤資訊不再直接輸出,放到乙個類的物件裡 pdoexcepti...
php PDO的事務處理和異常處理
pdo的事務處理 事務處理需要呼叫pdo物件的三個方法 pdo begintransaction 啟動乙個事務 pdo rollback 回滾乙個事務 pdo commit 提交乙個事務 使用舉例 兩條語句同時成功則提交,有乙個失敗就回滾操作 pdo異常處理 異常,其實就是錯誤,將錯誤資訊都封裝到乙...
PHP PDO中的預處理
1 建立 sql 語句模板併發送到資料庫。預留的值使用引數 標記 許多成熟的資料庫都支援預處理語句 prepared statements 的概念。它們是什麼東西?你可以把它們想成是一種編譯過的要執行的sql語句模板,可以使用不同的變數引數定製它。注意 1 這裡講到sql語句模版,什麼是sql語句模...