PHP PDO的错误处理模式
2015-03-09 12:54
344 查看
PDO默认的错误处理方式是返回一个数组格式的错误代码。如果想要判断SQL有没有出错时,就需要写一组代码来检测这个返回的数组。觉得这样有些麻烦。还好PDO还提供了另外两种处理方式,只要根据需要设置一下就OK了。
方式一:PDO::ERRMODE_SILENT
这是默认使用的模式。PDO会在statement和database对象上设定简单的错误代号,可以使用PDO->errorCode() 和 PDO->errorInfo() 方法检查错误;
方式二:PDO::ERRMODE_WARNING
使用这个模式时,PDO将会发出一个传统的E_WARNING信息。
方式三:PDO::ERRMODE_EXCEPTION
PDO会抛出一个PDOException异常并设置它的属性来反映错误代号和错误信息。
设置的时候要注意,这三个都是属于PDO::ATTR_ERRMODE属性的值,所以在用setAttribute设置的时候需要加上属性名:PDO::ATTR_ERRMODE。
代码举例:
$pdo -> setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
应用场景:
在你实例化 pdo 后,执行
$dbh->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
通常在实例化时加入,例
$dbh = new PDO('mysql:host=localhost;dbname=test', $user, $pass, array(PDO::ATTR_ERRMODE => PDO::ERRMODE_EXCEPTION));
方式一:PDO::ERRMODE_SILENT
这是默认使用的模式。PDO会在statement和database对象上设定简单的错误代号,可以使用PDO->errorCode() 和 PDO->errorInfo() 方法检查错误;
方式二:PDO::ERRMODE_WARNING
使用这个模式时,PDO将会发出一个传统的E_WARNING信息。
方式三:PDO::ERRMODE_EXCEPTION
PDO会抛出一个PDOException异常并设置它的属性来反映错误代号和错误信息。
设置的时候要注意,这三个都是属于PDO::ATTR_ERRMODE属性的值,所以在用setAttribute设置的时候需要加上属性名:PDO::ATTR_ERRMODE。
代码举例:
$pdo -> setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
应用场景:
在你实例化 pdo 后,执行
$dbh->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
通常在实例化时加入,例
$dbh = new PDO('mysql:host=localhost;dbname=test', $user, $pass, array(PDO::ATTR_ERRMODE => PDO::ERRMODE_EXCEPTION));
相关文章推荐
- 跟着百度学PHP[14]-PDO的错误处理模式&PDO执行SQL
- PHP中PDO的错误处理
- 夺命雷公狗---PDO NO:4 的错误处理模式
- PHP数据库抽象层之PDO(五)——错误与错误处理
- PDO错误处理模式与事务处理
- PDO的错误处理模式
- PHP PDO Cannot execute queries while other unbuffered queries are active 错误的一种分析和处理
- PHP 错误与异常 笔记与总结(15 )使用观察者模式处理异常信息
- PHP中PDO错误/异常(PDOException)处理
- PDO错误处理的三种模式
- PHP中PDO的错误处理
- pdo错误处理模式与事务处理
- PHP中PDO错误/异常(PDOException)处理
- 设置PDO的错误处理模式
- PHP中PDO的错误处理
- PDO 错误处理模式
- PHP中PDO的错误处理
- PHP运行错误处理集锦
- PHP如何抛出异常处理错误
- PHP 错误处理