(PHP 5 >= 5.1.0, PHP 7, PHP 8, PECL pdo >= 0.2.0)
PDOStatement::columnCount —
Retourne le nombre de colonnes dans le jeu de résultats
Description
public
PDOStatement::columnCount(): int
Si l'objet PDOStatement a été retourné par la fonction
PDO::query(), le nombre de colonnes est
immédiatement disponible.
Si l'objet PDOStatement a été retourné par la fonction
PDO::prepare(), un compte précis des colonnes
ne sera pas disponible tant que vous n'invoquerez pas la fonction
PDOStatement::execute().
Liste de paramètres
Cette fonction ne contient aucun paramètre.
Valeurs de retour
Retourne le nombre de colonnes dans le jeu de résultats représenté par
l'objet PDOStatement, même si le jeu de résultats est vide. S'il n'y a pas
de jeu de résultats, pdostatement::columnCount()
retournera 0
.
Erreurs / Exceptions
Émet une erreur de niveau E_WARNING
si l'attribut PDO::ATTR_ERRMODE
est défini
à PDO::ERRMODE_WARNING
.
Lève une exception PDOException si l'attribut PDO::ATTR_ERRMODE
est défini
à PDO::ERRMODE_EXCEPTION
.
Exemples
Exemple #1 Comptage des colonnes
Cet exemple démontre comment
pdostatement::columnCount() fonctionne
avec ou sans jeu de résultats.
<?php
$dbh = new PDO('odbc:sample', 'db2inst1', 'ibmdb2');
$sth = $dbh->prepare("SELECT nom, couleur FROM fruit");
/* Compte le nombre de colonnes dans le jeu de résultat (non-existant) */
$colcount = $sth->columnCount();
print("Avant execute(), le jeu de résultats avait $colcount colonnes (devrait être 0)\n");
$sth->execute();
/* Compte le nombre de colonnes dans le jeu de résultats */
$colcount = $sth->columnCount();
print("Après execute(), le jeu de résultats a $colcount colonnes (devrait être 2)\n");
?>
L'exemple ci-dessus va afficher :
Avant execute(), le jeu de résultats avait 0 colonnes (devrait être 0)
Après execute(), le jeu de résultat a 2 colonnes (devrait être 2)
Voir aussi
- PDO::prepare() - Prépare une requête à l'exécution et retourne un objet
- PDOStatement::execute() - Exécute une requête préparée
- pdostatement::rowCount() - Retourne le nombre de lignes affectées par le dernier
appel à la fonction PDOStatement::execute()