mysql_fetch_field

(PHP 4, PHP 5)

mysql_fetch_field Retourne les données enregistrées dans une colonne MySQL sous forme d'objet

Avertissement

Cette extension est obsolète depuis PHP 5.5.0, et sera supprimée dans le futur. À la place, les extensions MySQLi ou PDO_MySQL doivent être utilisées. Voir aussi le guide MySQL : choix de l'API ainsi que la FAQ associée pour plus d'information. Voici les alternatives à cette fonction :

Description

object mysql_fetch_field ( resource $result [, int $field_offset = 0 ] )

Retourne un objet contenant les informations sur les champs. Cette fonction peut être utilisée pour obtenir des informations sur les champs de la requête fournie result.

Liste de paramètres

result

La ressource de résultat qui vient d'être évaluée. Ce résultat vient de l'appel à la fonction mysql_query().

field_offset

La position numérique du champ. Si la position du champ n'est pas spécifiée, le champ suivant qui n'a pas encore été récupéré par cette fonction est alors récupéré. field_offset commence à 0.

Valeurs de retour

Retourne un objet contenant les informations sur les champs. Les propriétés de l'objet sont les suivantes :

  • "name" : nom de la colonne
  • "table" : nom de la table pour la colonne, qui pourra être l'alias si un alias a été défini.
  • "max_length" : taille maximale de la colonne
  • "not_null" : 1 si la colonne ne peut pas être NULL
  • "primary_key" : 1 si la colonne est une clé primaire
  • "unique_key" : 1 si la colonne est une clé unique
  • "multiple_key" : 1 si la colonne est une clé non unique
  • "numeric" : 1 si la colonne est numérique
  • "blob" : 1 si la colonne est BLOB
  • "type" : le type de la colonne
  • "unsigned" : 1 si la colonne est non signée
  • "zerofill" : 1 si la colonne est complétée par des zéro

Exemples

Exemple #1 Exemple avec mysql_fetch_field()

<?php
$conn = mysql_connect('localhost', 'mysql_user', 'mysql_password');
if (!$conn) {
   die('Impossible de se connecter : ' . mysql_error());
}
mysql_select_db('database');
$result = mysql_query('select * from table');
if (!$result) {
   die('Échec de la requête : ' . mysql_error());
}
/* Lecture des méta données de la colonne */
$i = 0;
while ($i < mysql_num_fields($result)) {
   echo "Détails sur la colonne $i:<br />\n";
   $meta = mysql_fetch_field($result, $i);
   if (!$meta) {
	  echo "Aucun détail disponible<br />\n";
   }
   echo "<pre>
	blob:		 $meta->blob
	max_length:   $meta->max_length
	multiple_key: $meta->multiple_key
	name:		 $meta->name
	not_null:	 $meta->not_null
	numeric:	  $meta->numeric
	primary_key:  $meta->primary_key
	table:		$meta->table
	type:		 $meta->type
	unique_key:   $meta->unique_key
	unsigned:	 $meta->unsigned
	zerofill:	 $meta->zerofill
   </pre>";
   $i++;
}
mysql_free_result($result);
?>

Notes

Note: Les noms des champs retournés par cette fonction sont sensibles à la casse.

Note:

Si les champs ou les noms de table utilisent un alias dans la requête SQL, le nom utilisé dans l'alias sera retourné. Le nom original peut être récupéré en utilisant la méthode mysqli_result::fetch_field().

Voir aussi

LoadingChargement en cours