Funzione mysql_fetch_field() di PHP

Definizione e uso

La funzione mysql_fetch_field() ottiene informazioni sulla colonna dal risultato e le restituisce come oggetto.

mysql_fetch_field() può essere utilizzato per ottenere informazioni sui campi dai risultati della query. Se non viene specificato un offset di campo, viene estratto il campo successivo non ancora estratto con mysql_fetch_field().

La funzione restituisce un oggetto contenente informazioni sui campi.

le proprietà dell'oggetto restituito sono:

  • name - il nome della colonna
  • table - il nome della tabella in cui si trova la colonna
  • max_length - la lunghezza massima della colonna
  • not_null - 1, se la colonna non può essere NULL
  • primary_key - 1, se la colonna è una chiave primaria
  • unique_key - 1, se la colonna è una chiave unica
  • multiple_key - 1, se la colonna è una chiave non unica
  • numeric - 1, se la colonna è numerica
  • blob - 1,如果该列是 BLOB
  • blob - 1, se la colonna è BLOB
  • type - il tipo della colonna
  • unsigned - 1, se la colonna è unsigned

zerofill - 1, se la colonna è zero-filled

sintassidescrizionemysql_fetch_field(field_offset)
, parametro
descrizione Obbligatorio. Il puntatore di dati da utilizzare. Questo puntatore di dati è restituito da mysql_query().
field_offset Obbligatorio. Specifica da quale campo iniziare. 0 indica il primo campo. Se non impostato, viene restituito il campo successivo.

Suggerimenti e note

Note:Il nome del campo restituito da questa funzione è sensibile alle maiuscole.

Esempio

<?php
$con = mysql_connect("localhost", "hello", "321");
if (!$con)
  {
  die('Impossibile connettersi: ' . mysql_error());
  }
$db_selected = mysql_select_db("test_db",$con);
$sql = "SELECT * from Person";
$result = mysql_query($sql,$con);
while ($property = mysql_fetch_field($result))
  {
  echo "Nome campo: " . $property->name . "<br />";
  echo "Nome tabella: " . $property->table . "<br />";
  echo "Valore predefinito: " . $property->def . "<br />";
  echo "Lunghezza massima: " . $property->max_length . "<br />";
  echo "Non NULL: " . $property->not_null . "<br />"; 
  echo "Chiave primaria: " . $property->primary_key . "<br />";
  echo "Chiave unica: " . $property->unique_key . "<br />"; 
  echo "Chiave multipla: " . $property->multiple_key . "<br />";
  echo "Campo numerico: " . $property->numeric . "<br />";
  echo "BLOB: " . $property->blob . "<br />";
  echo "Tipo di campo: " . $property->type . "<br />";
  echo "Unsigned: " . $property->unsigned . "<br />";
  echo "Zero-filled: " . $property->zerofill . "<br /><br />"; 
  }
mysql_close($con);
?>

Output:

Nome campo: Cognome
Nome tabella: Person
Valore predefinito: 
Lunghezza massima: 8
Non NULL: 0
Chiave primaria: 0
Chiave unica: 0
Chiave multipla: 0
Campo numerico: 0
BLOB: 0
Tipo di campo: string
Unsigned: 0
Zero-filled: 0
Nome campo: Nome
Nome tabella: Person
Valore predefinito: 
Lunghezza massima: 7
Non NULL: 0
Chiave primaria: 0
Chiave unica: 0
Chiave multipla: 0
Campo numerico: 0
BLOB: 0
Tipo di campo: string
Unsigned: 0
Zero-filled: 0
Nome campo: Città
Nome tabella: Person
Valore predefinito: 
Lunghezza massima: 9
Non NULL: 0
Chiave primaria: 0
Chiave unica: 0
Chiave multipla: 0
Campo numerico: 0
BLOB: 0
Tipo di campo: string
Unsigned: 0
Zero-filled: 0
Nome campo: Età
Nome tabella: Person
Valore predefinito: 
Lunghezza massima: 2
Non NULL: 0
Chiave primaria: 0
Chiave unica: 0
Chiave multipla: 0
Campo numerico: 1
BLOB: 0
Tipo di campo: int
Unsigned: 0
Zero-filled: 0