(No version information available, might be only in CVS)
PDOStatement->bindColumn — Lie une colonne à une variable PHP
PDOStatement::bindColumn() fait en sorte qu'une variable particulière soit liée à une colonne données dans le jeu de résultats depuis une requête. Chaque appel à la fonction PDOStatement::fetch() ou PDOStatement::fetchAll() mettra à jour toutes les variables qui sont liées aux colonnes.
Note: Étant donné que les informations sur les colonnes ne sont pas toujours disponibles à PDO tant que la requête n'est pas exécutée, les applications portables doivent appeler cette fonction après la fonction PDOStatement::execute().
Numéro de la colonne (en commençant à 1) ou nom de la colonne dans le jeu de résultats. Si vous utilisez les noms de colonnes, assurez-vous que le nom corresponde à la casse de la colonne, comme retourné par le driver.
Nom de la variable PHP à laquelle la colonne doit être liée.
Type du paramètre, spécifié par les constantes PDO::PARAM_*.
Une astuce pour la pré-allocation.
Paramètre(s) optionnel(s) pour la bibliothèque.
Cette fonction retourne TRUE en cas de succès, FALSE en cas d'échec.
Exemple #1 Lie l'affichage du jeu de résultats à des variables PHP
Lie les colonnes du jeu de résultats aux variables PHP est une façon agréable de rendre les données contenues dans chaque ligne immédiatement disponible à votre application. L'exemple suivant montre comment PDO vous autorise à lier et récupérer les colonnes avec une variété d'options.
<?php
function readData($dbh) {
$sql = 'SELECT nom, couleur, calories FROM fruit';
try {
$stmt = $dbh->prepare($sql);
$stmt->execute();
/* Lie par les numéros de colonnes */
$stmt->bindColumn(1, $nom);
$stmt->bindColumn(2, $couleur);
/* Lie par les noms de colonnes */
$stmt->bindColumn('calories', $cals);
while ($row = $stmt->fetch(PDO::FETCH_BOUND)) {
$data = $nom . "\t" . $couleur . "\t" . $cals . "\n";
print $data;
}
}
catch (PDOException $e) {
print $e->getMessage();
}
}
readData($dbh);
?>
L'exemple ci-dessus va afficher :
pomme rouge 150 banane jaune 175 kiwi vert 75 orange orange 150 mangue rouge 200 fraise rouge 25