今天了解到了一些新的内容:PDO通过学习了解到了几点。
PDO是一种操作数据库的方式。应为现在本人用的是mysqli。之前使用mysqli的时候,针对的是mysql。所以在使用的时候也没发现有任何问题,在了解过PDO之后发现mysqli还有很多局限性。
PDO可以适用于多种数据库,有编码统一性、面向对象、灵活性、高性能几个特性。而且在使用方面,也是比较简单。
在使用PDO的时候在PHP.ini中打开扩展extension=php_pdo_mysql.dll;
举个小例子:链接数据库进行增删改查;
首先链接数据库:
//pdo连接数据库方法
$dbms='mysql'; //数据库类型
$host='localhost'; //数据库主机名
$dbName='money'; //使用的数据库
$user='root'; //数据库连接用户名
$pass='root'; //对应的密码
$dsn="$dbms:host=$host;dbname=$dbName";
$db = new PDO($dsn, $user, $pass, array(PDO::MYSQL_ATTR_INIT_COMMAND => "SET NAMES 'utf8';")); //初始化一个PDO对象
查询
$one=$db->query("select * from money");
/query() 执行sql 用于有返回结果集的时候,比如查询。
用循环利用fetch方法逐个取出数据
while($rows=$one->fetch()){
//print_r($rows);
}
fetchAll()方法可以一次去除结果集中所有数据,以二维数组的形式返回
$data=$one->fetchAll();
//print_r($data);
//预处理:
节省带宽 把相应的sql语句准备好 ,防止sql注入 。
PDO::prepare($sql),利用PDO来预执行sql语句
PDOstatement::execute() 执行预处理
PDOstatement::fetch()或者PDOstatement::fetch()来取结果集的数据
也可以($res=$pdo->prepare($sql);//预处理
if($res->execute()){//执行预处理
$array=$res->fetchAll();
}
print_r($array);)