pdo如何进行异常处理?本篇文章给大家带来的内容是介绍pdo的三种处理错误的方式,有一定的参考价值,有需要的朋友可以参考一下,希望对你有所帮助。
PDO提供了三种处理错误的方式
PDO::ERRMODE_SILENT:静默模式(默认)
PDO::ERRMODE_WARNING:警告模式
PDO::ERRMODE_EXCEPTION:异常模式
立即学习“PHP免费学习笔记(深入)”;
示例:
<?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/>";
}注意:在PDO中进行异常处理不需要实例化异常类并抛出异常,因为我们在第5步已经把PDO修改为异常模式:
$pdo->setAttribute(PDO::ATTR_ERRMODE,PDO::ERRMODE_EXCEPTION);
运行结果:正常显示没有异常!
把监听代码块故意写错,看看是否抛出异常,抛出的异常是不是我们想要的!
//监听
$sql = "select * from pdo111"; //把 pdo 错改成 pdo111结果:

抛出异常信息,说明异常处理成功!
总结:以上就是本篇文的全部内容,希望能对大家的学习有所帮助,更多相关视频推荐:php教程!
PHP怎么学习?PHP怎么入门?PHP在哪学?PHP怎么学才快?不用担心,这里为大家提供了PHP速学教程(入门到精通),有需要的小伙伴保存下载就能学习啦!
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号