PDO 错误处理模式
2017-11-01 04:20
155 查看
异常模式:
这个模式需要配合 try 使用 :
一旦出错,就会:
1. 创建一个对象,$e 也可以随便命名,从 $e->getMessage() 获取错误信息;
2. 采取动作;
这个其实等于 缺省模式的 if($pdo->errorInfo()[2]) ...
创建PDO的时候,为什么也用 try?
因为这时候连PDO对象都没有,所以也不能设置错误模式,所以可以用try,
一旦PDO创建成功,错误模式就成了 缺省模式,也就不能用try了.
缺省模式:
这个出错,会给 $pdo->errorCode() 和 $pdo->errorInfo()[2] 赋值;
可以用 if($pdo->errorInfo()[2])和if($pdo->errorCode()) 判断脚本是不是出错.
如果不出错,上面都是空的;
警告模式:
这个会echo出一个错误信息,打乱了脚本;
学习调试的时候使用比较好;
真用起来的时候,很多时候判断不出到底脚本有没有出错;
$pdo->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
这个模式需要配合 try 使用 :
一旦出错,就会:
1. 创建一个对象,$e 也可以随便命名,从 $e->getMessage() 获取错误信息;
2. 采取动作;
try{ 要执行的命令... } catch(PDOException $e) { echo "执行命令失败:".$e->getMessage(); 失败后的动作... }
这个其实等于 缺省模式的 if($pdo->errorInfo()[2]) ...
创建PDO的时候,为什么也用 try?
因为这时候连PDO对象都没有,所以也不能设置错误模式,所以可以用try,
一旦PDO创建成功,错误模式就成了 缺省模式,也就不能用try了.
缺省模式:
$pdo->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_SILENT);
这个出错,会给 $pdo->errorCode() 和 $pdo->errorInfo()[2] 赋值;
可以用 if($pdo->errorInfo()[2])和if($pdo->errorCode()) 判断脚本是不是出错.
如果不出错,上面都是空的;
警告模式:
$pdo->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_WARNING);
这个会echo出一个错误信息,打乱了脚本;
学习调试的时候使用比较好;
真用起来的时候,很多时候判断不出到底脚本有没有出错;
相关文章推荐
- PDO的错误处理模式
- PHP PDO的错误处理模式
- 设置PDO的错误处理模式
- 夺命雷公狗---PDO NO:4 的错误处理模式
- pdo错误处理模式与事务处理
- PDO错误处理模式与事务处理
- PDO错误处理的三种模式
- 跟着百度学PHP[14]-PDO的错误处理模式&PDO执行SQL
- Swift—do-try-catch错误处理模式-备
- 《从零开始学Swift》学习笔记(Day 52)——Cocoa错误处理模式
- PHP中PDO的错误处理
- Mysql运行模式及1690错误处理
- pdo简介--错误与错误处理
- PDO错误与错误处理
- PDO错误处理
- PHP中PDO错误/异常(PDOException)处理
- PHP数据库抽象层之PDO(五)——错误与错误处理
- 《从零开始学Swift》学习笔记(Day 52)——Cocoa错误处理模式
- PDO 简介——错误和错误处理
- 《从零开始学Swift》学习笔记(Day 53)——do-try-catch错误处理模式