Ibr*_*mar 15
将PDO视为与PHP打包在一起的内置类,使您可以更轻松地与数据库进行交互.在开发PHP应用程序时,您需要处理许多事情,例如建立连接,创建查询,获取结果将资源转换为数组,使用mysql_real_escape_string()现在需要处理的许多事情来逃避MySQL注入,最少但不是最后一个考虑你要从mysql跳转到mysqli或MSSQL的情况,你需要通过每个函数并更改每行代码以满足需要.PDO通过提供一个集中式类来消除所有这些问题.
详细说明下面的代码.
使用PDO建立与MySQL的连接:
$dbh = new PDO('mysql:host='.HOST.';dbname='.DATABASE,USERNAME,PASSWORD);
Run Code Online (Sandbox Code Playgroud)
就是这样,连接已经建立,您可以重用$ dbh来执行查询,例如从表用户获取结果,只需要两行代码.
$sth = $dbh->query('SELECT id,name,email FROM users');
$user = $sth->fetch(PDO::FETCH_ASSOC);
Run Code Online (Sandbox Code Playgroud)
现在$user将所有值作为关联数组提取.
要将值插入数据库,您需要执行以下操作.
$sth = $dbh->prepare('INSERT INTO users(name,email) VALUES(:name, :email)');
$sth->bindParam(':name', 'My Name');
$sth->bindParam(':email', 'email@email.com');
$sth->execute();
Run Code Online (Sandbox Code Playgroud)
上面的代码使用了命名占位符,这样PDO可以保护您免受许多漏洞的影响,因为它可以让您远离MySQL注入.为了让你开始看看netttus的这个教程,他们已经很好地解释了这篇文章,这篇文章将解释你所有关于PDO的困境
http://net.tutsplus.com/tutorials/php/why-you-should-be-using-phps-pdo-for-database-access/
http://php.net/manual/en/book.pdo.php
PHP 数据对象 (PDO) 扩展定义了一个轻量级、一致的接口,用于访问 PHP 中的数据库。
PDO 提供了数据访问抽象层,这意味着无论您使用哪个数据库,都可以使用相同的函数来发出查询和获取数据。PDO 不提供数据库抽象;它不会重写 SQL 或模拟缺失的功能。如果您需要该功能,您应该使用成熟的抽象层。
| 归档时间: |
|
| 查看次数: |
11388 次 |
| 最近记录: |