php pdo 异常,php PDO如何进行异常处理

PDO如何进行异常处理?本篇文章给大家带来的内容是介绍PDO的三种处理错误的方式,有一定的参考价值,有需要的朋友可以参考一下,希望对你有所帮助。

PDO提供了三种处理错误的方式

PDO::ERRMODE_SILENT:静默模式(默认)

PDO::ERRMODE_WARNING:警告模式

PDO::ERRMODE_EXCEPTION:异常模式

示例:<?php

/**

* 利用PDO对象实现异常处理操作

*/

echo "";

//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()."
";

echo "错误代码为:".$e->getCode()."
";

echo "错误文件为:".$e->getFile()."
";

echo "错误行号为:".$e->getLine()."
";

}

注意:在PDO中进行异常处理不需要实例化异常类并抛出异常,因为我们在第5步已经把PDO修改为异常模式:$pdo->setAttribute(PDO::ATTR_ERRMODE,PDO::ERRMODE_EXCEPTION);

运行结果:正常显示没有异常!

把监听代码块故意写错,看看是否抛出异常,抛出的异常是不是我们想要的!//监听

$sql = "select * from pdo111"; //把 pdo 错改成 pdo111

结果:

3ef46d682b71a982b41f372c21b3b22e.png

抛出异常信息,说明异常处理成功!

总结:以上就是本篇文的全部内容,希望能对大家的学习有所帮助,更多相关视频推荐:php教程!

本文转载于:博客园,如有侵犯,请联系a@php.cn删除

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值