PDOStatement::bindColumn
(PHP 5 >= 5.1.0, PHP 7, PECL pdo >= 0.1.0)
PDOStatement::bindColumn — Lie une colonne à une variable PHP
Description
$column
, mixed &$param
[, int $type
[, int $maxlen
[, mixed $driverdata
]]] )PDOStatement::bindColumn() fait en sorte qu'une variable PHP soit liée à une colonne données dans le jeu de résultats dans une requête. Chaque appel à la fonction PDOStatement::fetch() ou PDOStatement::fetchAll() met à 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().
Cependant, pour pouvoir lier une colonne de type LOB avec un flux lors de l'utilisation du pilote PostGreSQL, les applications doivent appeler cette méthode avant d'appeler PDOStatement::execute(), sous peine de recevoir l'objet OID sous forme d'entier.
Liste de paramètres
-
column
-
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 pilote.
-
param
-
Nom de la variable PHP à laquelle la colonne doit être liée.
-
type
-
Type du paramètre, spécifié par les constantes PDO::PARAM_* constants.
-
maxlen
-
Une astuce pour la pré-allocation.
-
driverdata
-
Paramètres optionnels pour la bibliothèque.
Exemples
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
Voir aussi
- PDOStatement::execute() - Exécute une requête préparée
- PDOStatement::fetch() - Récupère la ligne suivante d'un jeu de résultats PDO
- PDOStatement::fetchAll() - Retourne un tableau contenant toutes les lignes du jeu d'enregistrements
- PDOStatement::fetchColumn() - Retourne une colonne depuis la ligne suivante d'un jeu de résultats
Version en cache
05/11/2024 03:36:04 Cette version de la page est en cache (à la date du 05/11/2024 03:36:04) afin d'accélérer le traitement. Vous pouvez activer le mode utilisateur dans le menu en haut pour afficher la dernère version de la page.Document créé le 30/01/2003, dernière modification le 26/10/2018
Source du document imprimé : https://www.gaudry.be/php-rf-pdostatement.bindcolumn.html
L'infobrol est un site personnel dont le contenu n'engage que moi. Le texte est mis à disposition sous licence CreativeCommons(BY-NC-SA). Plus d'info sur les conditions d'utilisation et sur l'auteur.
Références
Ces références et liens indiquent des documents consultés lors de la rédaction de cette page, ou qui peuvent apporter un complément d'information, mais les auteurs de ces sources ne peuvent être tenus responsables du contenu de cette page.
L'auteur de ce site est seul responsable de la manière dont sont présentés ici les différents concepts, et des libertés qui sont prises avec les ouvrages de référence. N'oubliez pas que vous devez croiser les informations de sources multiples afin de diminuer les risques d'erreurs.