php pdo类的方法:beginTransaction()、commit()、__construct()、errorCode()、errorInfo()、exec()、getAttribute()、query()、quote()等等。
本教程操作环境:windows7系统、PHP7.1版,DELL G3电脑
PDO 是什么
PDO 是 PHP Date Object(PHP 数据对象)的简称,它是 PHP 为访问数据库定义的一个轻量级的、一致性的接口,它提供了一个数据访问抽象层,这样无论你使用什么数据库,都可以通过同一函数执行查询和获取数据,大大简化了数据库的操作,并能够屏蔽不同数据库之间的差异。
PDO 是与 PHP5.1 版本一起发行的,使用 PDO 可以很方便地进行跨数据库程序的开发,以及不同数据库间的移植,目前 PDO 支持的数据库包括 Firebird、FreeTDS、Interbase、MySQL、SQL Server、ODBC、Oracle、Postgre SQL、SQLite 和 Sybase 等。
有了 PDO 就不必再使用 mysqli_* 的一系列函数了,只需要使用 PDO 中的方法就可以对数据库进行操作。
PDO 类的方法:
-
beginTransaction() — 启动一个事务
-
commit() — 提交一个事务
-
__construct() — 创建一个表示数据库连接的 PDO 实例
-
errorCode() — 获取跟数据库句柄上一次操作相关的 SQLSTATE
-
errorInfo() — 返回最后一次操作数据库的错误信息
-
exec() — 执行一条 SQL 语句,并返回受影响的行数
-
getAttribute() — 取回一个数据库连接的属性
-
getAvailableDrivers() — 返回一个可用驱动的数组
-
inTransaction() — 检查是否在一个事务内
-
lastInsertId() — 返回最后插入行的ID或序列值
-
prepare() — 备要执行的SQL语句并返回一个 PDOStatement 对象
-
query() — 执行 SQL 语句,返回PDOStatement对象,可以理解为结果集
-
quote() — 为SQL语句中的字符串添加引号。
-
rollBack() — 回滚一个事务
-
setAttribute() — 设置属性
其中pdo类常用方法:
-
exec()
-
query()
-
lastInsertId()
<?php $servername = "localhost"; $username = "root"; $password = "133nubia022"; $dbname='myweb'; $pdo= new PDO("mysql:host=$servername;dbname=$dbname", $username, $password); $pdo->exec('set names utf8'); $pdo->setAttribute(PDO::ATTR_DEFAULT_FETCH_MODE,PDO::FETCH_BOTH); $sql="insert into user(username,age) values('user123','55')"; if($pdo->exec($sql)){ $lastid=$pdo->lastInsertId(); echo "ID为{$lastid}的数据插入成功!"; } ?>
-
setAttribute()
设置获取模式属性
<?php $servername = "localhost"; $username = "root"; $password = "133nubia022"; $dbname='myweb'; $pdo= new PDO("mysql:host=$servername;dbname=$dbname", $username, $password); $pdo->exec('set names utf8'); $pdo->setAttribute(PDO::ATTR_DEFAULT_FETCH_MODE,PDO::FETCH_ASSOC); $sql="select * from user"; $smt=$pdo->query($sql); $rows=$smt->fetchAll(); echo '<pre>'; print_r($rows); echo '</pre>'; ?>
***
获取索引数组
<?php $servername = "localhost"; $username = "root"; $password = "133nubia022"; $dbname='myweb'; $pdo= new PDO("mysql:host=$servername;dbname=$dbname", $username, $password); $pdo->exec('set names utf8'); $pdo->setAttribute(PDO::ATTR_DEFAULT_FETCH_MODE,PDO::FETCH_NUM); $sql="select * from user"; $smt=$pdo->query($sql); $rows=$smt->fetchAll(); echo '<pre>'; print_r($rows); echo '</pre>'; ?>
获取混合数组
<?php $servername = "localhost"; $username = "root"; $password = "133nubia022"; $dbname='myweb'; $pdo= new PDO("mysql:host=$servername;dbname=$dbname", $username, $password); $pdo->exec('set names utf8'); $pdo->setAttribute(PDO::ATTR_DEFAULT_FETCH_MODE,PDO::FETCH_BOTH); $sql="select * from user"; $smt=$pdo->query($sql); $rows=$smt->fetchAll(); echo '<pre>'; print_r($rows); echo '</pre>'; ?>
推荐学习:《PHP视频教程》