# PDOStatement::columnCount

(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

Utilisez la fonction PDOStatement::columnCount() pour retourner le nombre de colonnes dans le jeu de résultats représenté par l'objet PDOStatement.

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()