Maison > Article > développement back-end > Explication détaillée de l'utilisation de mysql PDO::prepare
PDO::prepare — Prépare l'instruction SQL à exécuter et renvoie un objet PDOStatement (PHP 5 >= 5.1.0, PECL pdo >= 0.1.0)
Description
Syntaxe
public PDOStatement PDO::prepare ( string $statement [, array $driver_options = array() ] )
Préparez l'instruction SQL à exécuter pour la méthode PDOStatement::execute() L'instruction SQL peut contenir zéro ou plusieurs noms (:name) ou question. marques (? ) marque de paramètre, les paramètres seront remplacés lors de l'exécution de SQL.
Vous ne pouvez pas inclure à la fois des marqueurs de paramètres nommés (:name) ou de point d'interrogation (?) dans une instruction SQL. Vous ne pouvez choisir qu'un seul de ces styles.
Les paramètres de l'instruction SQL prétraitée transmettront les paramètres réels lors de l'utilisation de la méthode PDOStatement::execute().
Parameters
Instruction : Instruction SQL légale.
driver_options : ce tableau contient une ou plusieurs paires clé=>valeur pour définir les propriétés de l'objet PDOStatement. La plus couramment utilisée est de définir la valeur PDO::ATTR_CURSOR sur PDO::CURSOR_SCROLL pour demander un curseur déroulant.
Valeur de retour
En cas de succès, PDO::prepare() renvoie un objet PDOStatement, s'il échoue, il renvoie FALSE ou lève une exception PDOException.
Exemple
Utiliser des paramètres nommés (:name) 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(); ?>
Utiliser des paramètres de point d'interrogation (?) pour préparer des instructions 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(); ?>
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!