How to handle exceptions in php PDO
Jul 30, 2016 pm 01:29 PMHow does PDO handle exceptions? The content of this article is to introduce three ways of handling errors in PDO. It has certain reference value. Friends in need can refer to it. I hope it will be helpful to you.
PDO provides three ways to handle errors
PDO::ERRMODE_SILENT: silent mode (default)
PDO::ERRMODE_WARNING: warning mode
PDO::ERRMODE_EXC EPTION:Exception Pattern
Example:
<?php /** * 利用PDO对象实现异常处理操作 */ echo "<meta charset=utf-8>"; //PDO类的实例化 // 1 设置数据源相关参数 $dbms = 'mysql'; //选择数据库类型 $host = 'localhost'; $port = '3306'; $dbname = 'test'; $charset = 'utf8'; $dsn = "$dbms:host=$host;port=$port;dbname=$dbname;charset=$charset"; // 2 设置用户名密码 $user = 'root'; $pwd = ''; // 3 实例化PDO类 $pdo = new PDO($dsn,$user,$pwd); // 4 设置PDO相关属性 $pdo->setAttribute(PDO::ATTR_CASE,PDO::CASE_UPPER); // 5 修改PDO为异常模式 $pdo->setAttribute(PDO::ATTR_ERRMODE,PDO::ERRMODE_EXCEPTION); try{ //监听 $sql = "select * from pdo"; $stmt = $pdo->query($sql); }catch(PDOException $e){ //捕获异常 echo "错误信息为:".$e->getmessage()."<br/>"; echo "错误代码为:".$e->getCode()."<br/>"; echo "错误文件为:".$e->getFile()."<br/>"; echo "错误行号为:".$e->getLine()."<br/>"; }
Note: Exception handling in PDO does not require instantiating the exception class and throwing exceptions, because we have modified PDO to exception mode in step 5:
$pdo->setAttribute(PDO::ATTR_ERRMODE,PDO::ERRMODE_EXCEPTION);
Running results : Normal display with no abnormalities!
Write the monitoring code block deliberately wrong to see if an exception is thrown and whether the exception thrown is what we want!
//监听 $sql = "select * from pdo111"; //把 pdo 错改成 pdo111
Result:
throws an exception message, indicating that the exception handling is successful!
Summary: The above is the entire content of this article. I hope it can be helpful to everyone’s learning. More related video recommendations: php tutorial!

Hot Article

Hot tools Tags

Hot Article

Hot Article Tags

Notepad++7.3.1
Easy-to-use and free code editor

SublimeText3 Chinese version
Chinese version, very easy to use

Zend Studio 13.0.1
Powerful PHP integrated development environment

Dreamweaver CS6
Visual web development tools

SublimeText3 Mac version
God-level code editing software (SublimeText3)

Hot Topics

C++ function exceptions and multithreading: error handling in concurrent environments

How does C++ exception handling support custom error handling routines?

What is the relationship between recursive calls and exception handling in Java functions?

Exception handling in C++ technology: How to handle exceptions correctly in a multi-threaded environment?

How to handle exceptions in C++ Lambda expressions?

PHP exception handling: understand system behavior through exception tracking

How to handle cross-thread C++ exceptions?

Exception handling in C++ technology: How to optimize the performance of exception handling?
