一:创建PDO对象
这里只介绍将参数嵌入到构造函数的方法,另外2种:将参数存放在文件中,引用php.ini文件 不作介绍
<?php
$dsn = 'mysql:dbname=testdb;host=127.0.0.1';
$user = 'dbuser';
$password = 'dbpass';
try{
$dbh = new PDO()$dsn,$user,$password);
}catch(PDOException $e){
echo '数据库连接失败:'.$e->getMessage();
}
二:使用PDO对象
1,调整PDO的行为属性:getAttribute();setAttribute();
2,PDO的错误处理模式:PDO::ERRMODE_SILENT PDO::ERRMODE_WARNING PDO::ERRMODE_EXCEPTION
3,使用PDO执行SQL语句:
exec("sql语句"); // 返回受影响的行数
query("sql语句"); //返回结果集
三:PDO对预处理语句的支持
1,准备语句
2,绑定参数
3,执行装备好的查询
<?php
try{
$dbn = new PDO("mysql:dbname=testdb;host=localhost","mysql_user","mysql_pwd");
}catch(PDOException $e){
echo "数据库连接失败:".$e->getMessage();
exit;
}
$query = "insert into contactInfo(name,address,phone) values(?,?,?)";
$stmt = $dbh->prepare("$query");//调用PDO对象中的prepare()方法准备查询
$stmt->bindParam(1,$name);//将变量$name绑定到查询中的第一个问号参数中
$stmt->bindParam(2,$address);
$stmt->bindParam(3,$phone);
$name = "赵某某";//声明一个参数变量$name
$address = "海定区中关村";
$phone = "158016****";
//$stmt->excute(array("赵某某","海定区","158016****"));
$stmt->execute();//执行参数被绑定后的准备语句
$name = "孙某某";
$address = "玄武区";
$phone = "158999999";
$stmt->execute();
4,获取数据
fetch();//将结果集中当前行的记录以某种方式返回,并将结果集指针移至下一行,当到达结果集末尾时返回false
fetchAll();//只需要调用一次就可以获取结果集中的所有行,并赋给返回的数组(二维)
bindColumn();//将一个列和一个指定的变量名绑定,在每次使用fetch()方法获取各行记录时,会自动将相应的列值赋给该变量,但必须是在fetch()方法的第一个参数设置为PDO::FETCH_BOTH值时。
5,大数据对象的获取