PHP PDO编写语句

今天我被告知,我应该真的在使用PDO并在我的应用程序中准备好声明。 虽然我了解这些好处,但我正在努力了解如何将其实施到我的工作流程中。 除了使代码更清洁的事实,我应该有一个特定的数据库类,它包含我所有的准备好的语句,或者我应该创建一个每次我想运行一个查询? 我很难理解什么时候应该使用标准的PDO查询,什么时候应该使用准备好的语句。 任何示例,技巧或教程链接将不胜感激。

在pdo :: prepare()文档中有两个很好的例子。

我已经把它们包括在这里,简化了一下。

这个使用? 参数。 $dbh基本上是一个PDO对象。 而你正在做的是把值150'red'放在第一和第二个问号。

 /* Execute a prepared statement by passing an array of values */ $sth = $dbh->prepare('SELECT name, colour, calories FROM fruit WHERE calories < ? AND colour = ?'); $sth->execute(array(150, 'red')); $red = $sth->fetchAll(); 

这个使用命名参数,有点复杂。

 /* Execute a prepared statement by passing an array of values */ $sql = 'SELECT name, colour, calories FROM fruit WHERE calories < :calories AND colour = :colour'; $sth = $dbh->prepare($sql, array(PDO::ATTR_CURSOR => PDO::CURSOR_FWDONLY)); $sth->execute(array(':calories' => 150, ':colour' => 'red')); $red = $sth->fetchAll();