PDO是PHP 5新加入的一个重大功能,因为在PHP 5以前的php4/php3都是一堆的数据库扩展来跟各个数据库的连接和处理,什么 php_mysql.dll、php_pgsql.dll、php_mssql.dll、php_sqlite.dll等等扩展来连接MySQL、PostgreSQL、MS SQL Server、SQLite,同样的,我...
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
结果:
抛出异常信息,说明异常处理成功!
总结:以上就是本篇文的全部内容,希望能对大家的学习有所帮助,更多相关视频推荐:php教程!
PDO是PHP 5新加入的一个重大功能,因为在PHP 5以前的php4/php3都是一堆的数据库扩展来跟各个数据库的连接和处理,什么 php_mysql.dll、php_pgsql.dll、php_mssql.dll、php_sqlite.dll等等扩展来连接MySQL、PostgreSQL、MS
pdo->begintransaction() — 标明回滚起始点pdo->commit() — 标明回滚结束点,并执行sqlpdo->__construct() — 建立一个pdo链接数据库的实例pdo->errorcode() — 获取错误码pdo->erro...
... >
POD扩展是在php5中加入,该扩展提供PHP内置类 PDO来对数据库进行访问,不同数据库使用相同的方法名,解决数据库连接不统一的问题。PDO的目标
提供一种轻型、清晰、方便的 API统一各种不同 RDBMS 库的共...
PHP PDOPHP 数据对象 (PDO) 扩展为PHP访问数据库定义了一个轻量级的一致接口。PDO 提供了一个数据访问抽象层,这意味着,不管使用哪种数据库,都可以用相同的函数(方法)来查询和获取数据。PDO随PHP5.1发行...
1.PDO简介 PDO(PHP Data Object) 是PHP 5 中加入的东西,是PHP 5新加入的一个重大功能,因为在PHP 5以前的php4/php3都是一堆的数据库扩展来跟各个数据库的连接和处理,什么 php_mysql.dll、php_pgsql.dll、php_mssql.dll、p
...ring()函数过滤用户提交的值,但是也有缺陷。而使用PHP的PDO扩展的 prepare 方法,就可以避免sql injection 风险。
PDO(PHP Data Object) 是PHP5新加入的一个重大功能,因为在PHP 5以前的php4/php3都是一堆的数据库扩展来跟各个数据库的
... 说明PDO::PARAM_BOOL (integer) 表示布尔数据类型。 PDO::PARAM_NULL (integer) 表示 SQL 中的 NULL 数据类型。
PDO如何进行异常处理?本篇文章给大家带来的内容是介绍PDO的三种处理错误的方式,有一定的参考价值,有需要的朋友可以参考一下,希望对你有所帮助。PDO提供了三种处理错误的方式PDO::...
PDO的环境配置:开启支持PDO 在php.ini配置文件中开启:extension=php_pdo.dllextension=php_pdo_mysql.dll在PDO操作中涉及到类:PDO、PDOStatement(预处理对象)、PDOException(异常类)一、 PDO类的构造方法:---
先说 缺省模式
$pdo->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_SILENT);
我做的实验中,出错后,会给 $pdo->errorCode() 和 $pdo->errorInfo() 赋值;通过调用他们可以可以 看 错误的详细信息;
然后说