PDO :: prepare
PDO :: prepare - se préparer à exécuter l'instruction SQL et retourne un PDOStatement objets (PHP 5> = 5.1.0, PECL pdo> = 0.1.0)
explication
grammaire
public PDOStatement PDO::prepare ( string $statement [, array $driver_options = array() ] )
Pour PDOStatement :: execute () méthode se prépare à exécuter des instructions SQL, les instructions SQL peuvent contenir zéro ou plus nommé (: nom) ou un point d'interrogation des marqueurs de paramètres, les paramètres seront remplacés lors de l'exécution de SQL (?).
Vous ne pouvez pas contenir à la fois nommé dans l'instruction SQL (: nom) (?) Ou un point d'interrogation paramètre marqueurs ne peut choisir un style.
Prétraitement SQL paramètre de déclaration lorsque vous utilisez PDOStatement :: execute () méthode transmet les paramètres réels.
Paramètres
déclaration
instruction SQL valide.
driver_options
Ce tableau contient une ou plusieurs touches => paire de valeurs pour définir les propriétés de l'objet PDOStatement, est le plus couramment utilisé pour la valeur PDO :: ATTR_CURSOR à PDO :: CURSOR_SCROLL pour demander un curseur.
Valeur de retour
En cas de succès, PDO :: prepare () retourne l'objet PDOStatement retourne FALSE si elle échoue ou renvoie une PDOException d'exception.
Exemples
Utilisez un nom (: name) paramètre pour préparer des instructions SQL
<?php /* 通过数组值向预处理语句传递值 */ $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(); $sth->execute(array(':calories' => 175, ':colour' => 'yellow')); $yellow = $sth->fetchAll(); ?>
Utilisez un point d'interrogation (?) Paramètre pour préparer l'instruction SQL
<?php /* 通过数组值向预处理语句传递值 */ $sth = $dbh->prepare('SELECT name, colour, calories FROM fruit WHERE calories < ? AND colour = ?'); $sth->execute(array(150, 'red')); $red = $sth->fetchAll(); $sth->execute(array(175, 'yellow')); $yellow = $sth->fetchAll(); ?>