downloads | documentation | faq | getting help | mailing lists | licenses | wiki | reporting bugs | php.net sites | links | conferences | my php.net

search for in the

mysqli_result::fetch_fields> <mysqli_result::fetch_field_direct
Last updated: Fri, 14 Aug 2009

view this page in

mysqli_result::fetch_field

mysqli_fetch_field

(PHP 5)

mysqli_result::fetch_field -- mysqli_fetch_fieldRetourne le prochain champs dans le jeu de résultats

Description

Style orienté objet (méthode):

object mysqli_result::fetch_field ( void )

Style procédural :

object mysqli_fetch_field ( mysqli_result $result )

Retourne les attributs de la prochaine colonne dans le jeu de résultats représenté par le paramètre result en tant qu'objet. Appelez cette fonction de façon répétitive pour récupérer les informations de toutes les colonnes.

Liste de paramètres

result

Style procédural uniquement : Un identifiant de jeu de résultats retourné par la fonction mysqli_query(), mysqli_store_result() ou mysqli_use_result().

Valeurs de retour

Retourne un objet qui contient les informations d'un champ ou FALSE si aucune information n'est disponible pour ce champs.

Propriétés de l'objet
Propriété 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 champs 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 champs, représentée par une chaîne de caractères
max_length La longueur maximale du champs pour le jeu de résultats
length La largeur du champs, comme spécifiée dans la définition de table
charsetnr Le numéro du jeu de caractères pour ce champs
flags Un entier représentant le bit-flags pour ce champs
type Le type de données utilisées pour ce champs
decimals Le nombre de décimales utilisées (pour les champs de type entier)

Exemples

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 Code LIMIT 5";

if (
$result $mysqli->query($query)) {

    
/* Récupère les informations d'un champ pour toutes les colonnes */
    
while ($finfo $result->fetch_field()) {

        
printf("Name:     %s\n"$finfo->name);
        
printf("Table:    %s\n"$finfo->table);
        
printf("max. Len: %d\n"$finfo->max_length);
        
printf("Flags:    %d\n"$finfo->flags);
        
printf("Type:     %d\n\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 Code LIMIT 5";

if (
$result mysqli_query($link$query)) {

    
/* Récupère les informations d'un champ pour toutes les colonnes */
    
while ($finfo mysqli_fetch_field($result)) {

        
printf("Name:     %s\n"$finfo->name);
        
printf("Table:    %s\n"$finfo->table);
        
printf("max. Len: %d\n"$finfo->max_length);
        
printf("Flags:    %d\n"$finfo->flags);
        
printf("Type:     %d\n\n"$finfo->type);
    }
    
mysqli_free_result($result);
}

/* Fermeture de la connexion */
mysqli_close($link);
?>

L'exemple ci-dessus va afficher :

Name:     Name
Table:    Country
max. Len: 11
Flags:    1
Type:     254

Name:     SurfaceArea
Table:    Country
max. Len: 10
Flags:    32769
Type:     4

Voir aussi



add a note add a note User Contributed Notes
mysqli_result::fetch_field
ragtag at hotmail dot com
17-Sep-2008 12:16
The flags used by MySql are:                                                                                                                                           
       NOT_NULL_FLAG = 1                                                                             
       PRI_KEY_FLAG = 2                                                                              
       UNIQUE_KEY_FLAG = 4                                                                           
       BLOB_FLAG = 16                                                                                
       UNSIGNED_FLAG = 32                                                                            
       ZEROFILL_FLAG = 64                                                                            
       BINARY_FLAG = 128                                                                             
       ENUM_FLAG = 256                                                                               
       AUTO_INCREMENT_FLAG = 512                                                                     
       TIMESTAMP_FLAG = 1024                                                                         
       SET_FLAG = 2048                                                                               
       NUM_FLAG = 32768                                                                              
       PART_KEY_FLAG = 16384                                                                         
       GROUP_FLAG = 32768                                                                            
       UNIQUE_FLAG = 65536                                                                           

To test if a flag is set you can use & like so:
<?php
$meta
= $mysqli_result_object->fetch_field();
if (
$meta->flags & 4) {
  echo
'Unique key flag is set';
}
?>

 
show source | credits | stats | sitemap | contact | advertising | mirror sites