PDO简明教程,是时候抛弃mysql_*函数了
2014年9月6日 · 69 字 · 1 分钟
mysql_*系列函数我一之前一直在用,基于性能、安全性等原因,再加上PHP面向对象的增强,是时候使用PDO来处理数据了。PDO一个很重要的特点是该类与数据库无关,不同的数据库只是在实例化时传入的参数不同,但是操作方法是一样的。
<?php
try {
$pdo = new PDO('mysql:host=localhost;dbname=test','root','root');
//查询数据
$stmt = $pdo->prepare('SELECT * FROM user WHERE sex=?');
$sex = 'male';
$stmt->bindParam(1,$sex);
$stmt->setFetchMode(PDO::FETCH_ASSOC);
$list = $stmt->fetchAll();
//查询完毕
//写入数据
$stmt = $pdo->prepare('INSERT INTO user VALUES (?,?,?)');
$username = 'admin';
$password = md5('111111');
$sex = 'male';
$stmt->bindParam(1,$username);
$stmt->bindParam(2,$password);
$stmt->bindParam(3,$sex);
$stmt->execute();
//写入完毕
} catch (Exception $e) {
echo $e->getMessage();
}
编辑、更新、删除统称为写入操作,大家可以举一反三~
execute会返回受影响的函数,有可能为0行!请大家在判断时用 === 而不是 == , 0 == false 而 0 !== false