PDO::prepare — Подготавливает оператор SQL к выполнению и возвращает объект PDOStatement (PHP 5 >= 5.1.0, PECL pdo >= 0.1.0)
public PDOStatement PDO::prepare (строка $statement [, массив $driver_options = array()])
Подготовьте оператор SQL для выполнения метода PDOStatement::execute(). Оператор SQL может содержать ноль или более именованных (:name) или маркеров параметров с вопросительным знаком (?). Параметры будут заменены при выполнении SQL.
В оператор SQL нельзя включать как именованные (:name), так и маркеры параметров с вопросительным знаком (?). Можно выбрать только один из этих стилей.
Параметры в подготовленном операторе SQL передадут реальные параметры при использовании метода PDOStatement::execute().
оператор является допустимым оператором SQL.
driver_options Этот массив содержит одну или несколько пар ключ=>значение для установки свойств объекта PDOStatement. Чаще всего используется установка значения PDO::ATTR_CURSOR в PDO::CURSOR_SCROLL для запроса прокручиваемого курсора.
В случае успеха PDO::prepare() возвращает объект PDOStatement. В случае неудачи он возвращает FALSE или выдает исключение PDOException.
<?php/* Передача значений в подготовленные операторы через значения массива*/$sql = 'ВЫБЕРИТЕ имя, цвет, калории ИЗ фруктов WHERE калории < :калории AND цвет = :цвет';$sth = $dbh->prepare( $ sql, array(PDO::ATTR_CURSOR => PDO::CURSOR_FWDONLY));$sth->execute(array(':калории' => 150, ':color' => 'красный'));$red = $sth->fetchAll();$sth->execute(array(':калории' => 175, ':color' => 'желтый' ));$yellow = $sth->fetchAll();?>
<?php/* Передача значений в подготовленные операторы через значения массива*/$sth = $dbh->prepare('SELECT name, color, калорий ИЗ фруктов WHERE калории < ? AND color = ?');$sth-> выполнить (массив(150, 'красный'));$red = $sth->fetchAll();$sth->execute(array(175, 'yellow'));$yellow = $sth->fetchAll();?>