(PHP 5, PHP 7, PHP 8)
mysqli_result::fetch_field_direct -- mysqli_fetch_field_direct — Récupère les métadonnées d'un champ unique
Style orienté objet
$index): object|falseStyle procédural
Retourne un objet qui contient les métadonnées d'un champ dans le jeu de résultats spécifié.
resultStyle procédural uniquement : Un objet mysqli_result retourné par mysqli_query(), mysqli_store_result(), mysqli_use_result(), ou mysqli_stmt_get_result().
index
       Le numéro du champ. Cette valeur doit être dans l'intervalle
       0 à nombre de champs - 1.
      
   Retourne un objet qui contient les métadonnées d'un champ
   ou false si aucune métadonnée n'est spécifiée pour le champ
   fieldnr.
  
| Attribut | Description | 
|---|---|
| name | Le nom de la colonne | 
| orgname | Le nom original de la colonne si un alias a été spécifié | 
| table | Le nom de la table à laquelle ce champ appartient (s'il n'a pas été calculé) | 
| orgtable | Le nom original de la table si un alias a été spécifié | 
| def | La valeur par défaut du champ, représentée par une chaîne de caractères | 
| max_length | La longueur maximale du champ pour le jeu de résultats.
       À partir de PHP 8.1, cette valeur est toujours 0. | 
| length | La largeur du champ, comme spécifiée dans la définition de table | 
| charsetnr | Le numéro du jeu de caractères pour ce champ | 
| flags | Un entier représentant le bit-flags pour ce champ | 
| type | Le type de données utilisées pour ce champ | 
| decimals | Le nombre de décimales utilisées (pour les champs numériques) | 
Exemple #1 Style orienté objet
<?php
$mysqli = new mysqli("localhost", "my_user", "my_password", "world");
/* Vérification de la connexion */
if (mysqli_connect_errno()) {
    printf("Échec de la connexion : %s\n", mysqli_connect_error());
    exit();
}
$query = "SELECT Name, SurfaceArea from Country ORDER BY Name LIMIT 5";
if ($result = $mysqli->query($query)) {
    /* Get field information for column 'SurfaceArea' */
    $finfo = $result->fetch_field_direct(1);
    printf("Nom        : %s\n", $finfo->name);
    printf("Table      : %s\n", $finfo->table);
    printf("Taille max : %d\n", $finfo->max_length);
    printf("Flags      : %d\n", $finfo->flags);
    printf("Type       : %d\n", $finfo->type);
    $result->close();
}
/* Fermeture de la connexion */
$mysqli->close();
?>
Exemple #2 Style procédural
<?php
$link = mysqli_connect("localhost", "my_user", "my_password", "world");
/* Vérification de la connexion */
if (mysqli_connect_errno()) {
    printf("Échec de la connexion : %s\n", mysqli_connect_error());
    exit();
}
$query = "SELECT Name, SurfaceArea from Country ORDER BY Name LIMIT 5";
if ($result = mysqli_query($link, $query)) {
    /* Get field information for column 'SurfaceArea' */
    $finfo = mysqli_fetch_field_direct($result, 1);
    printf("Nom        : %s\n", $finfo->name);
    printf("Table      : %s\n", $finfo->table);
    printf("Taille max : %d\n", $finfo->max_length);
    printf("Flags      : %d\n", $finfo->flags);
    printf("Type       : %d\n", $finfo->type);
    mysqli_free_result($result);
}
/* Fermeture de la connexion */
mysqli_close($link);
?>
Les exemples ci-dessus vont afficher :
Nom : SurfaceArea Table : Country Taille max : 10 Flags : 32769 Type : 4