PDOStatement::getColumnMeta

(PHP 5 >= 5.1.0, PHP 7, PHP 8, PECL pdo >= 0.2.0)

PDOStatement::getColumnMeta Retourne les métadonnées pour une colonne d'un jeu de résultats

Description

public PDOStatement::getColumnMeta(int $column): array|false

Récupère les métadonnées pour une colonne d'un jeu de résultats dans un tableau associatif.

Avertissement

Certains pilotes peuvent ne pas implémenter la fonction PDOStatement::getColumnMeta(), car elle est facultative. Cependant, tous les pilotes PDO documentés dans le manuel implémentent cette fonction.

Liste de paramètres

column

Le nom de la colonne dans le jeu de résultats.

Valeurs de retour

Retourne un tableau associatif contenant les valeurs suivantes représentant les métadonnées pour une colonne :

Métadonnées d'une colonne
Nom Valeur
native_type Le type natif PHP utilisé pour représenter la valeur de la colonne.
driver:decl_type Le type SQL utilisé pour représenter la valeur de la colonne dans la base de données. Si la colonne du jeu de résultats est le résultat d'une fonction, cette valeur n'est pas retournée par la fonction PDOStatement::getColumnMeta().
flags N'importe quelle balise définie pour cette colonne.
name Le nom de cette colonne, comme retourné par la base de données.
table Le nom de la table de cette colonne, tel que retourné par la base de données.
len La longueur de cette colonne. Normalement, -1 pour les types autres que les nombres décimaux à virgule flottante.
precision La précision numérique pour cette colonne. Normalement, 0 pour les types autres que les nombres décimaux à virgule flottante.
pdo_type Le type de cette colonne comme représenté par la constante PDO::PARAM_*.

Retourne false si la colonne demandée n'existe pas dans le jeu de résultats, ou si aucun jeu de résultats n'existe.

Exemples

Exemple #1 Récupération des métadonnées pour une colonne

L'exemple suivant montre le résultat de la récupération des métadonnées pour une colonne générée par une fonction (COUNT) dans un pilote PDO_SQLITE.

<?php
$select 
$DB->query('SELECT COUNT(*) FROM fruit');
$meta $select->getColumnMeta(0);
var_dump($meta);
?>

L'exemple ci-dessus va afficher :

array(6) {
   ["native_type"]=>
   string(7) "integer"
   ["flags"]=>
      array(0) {
      }
   ["name"]=>
   string(8) "COUNT(*)"
   ["len"]=>
   int(-1)
   ["precision"]=>
   int(0)
   ["pdo_type"]=>
   int(2)
}

Voir aussi