mysql_fetch_field
(PHP 4, PHP 5)
mysql_fetch_field — Liefert ein Objekt mit Feldinformationen aus einem Anfrageergebnis
Diese Erweiterung ist seit PHP 5.5.0 als veraltet markiert und wird in der Zukunft entfernt werden. Verwenden Sie stattdessen die Erweiterungen MySQLi oder PDO_MySQL. Weitere Informationen finden Sie im Ratgeber MySQL: Auswahl einer API und den zugehörigen FAQ. Alternativen zu dieser Funktion umfassen:
Beschreibung
$result
[, int $field_offset = 0
] )Gibt ein Objekt zurück das Feldinformationen enthält. Diese Funktion kann benutzt werden um Informationen über Felder im übergebenen Abfrageergebnis zu erhalten.
Parameter-Liste
-
Ergebnis -
Das Ergebnis Ressource, das ausgewertet wird. Dieses Ergebnis kommt von einem Aufruf von mysql_query().
-
field_offset -
Der numerische Feldoffset. Wird dieser nicht angegeben so werden die Informationen über das nächste bisher noch nicht von dieser Der Feldoffset startet bei 0.
Rückgabewerte
Liefert ein object mit Feldinformationen. Die Eigenschaften des Objekts sind:
- name - Feldname
- table - Name der Tabelle zu der das Feld gehört, wobei dies der Aliasname ist falls einer definiert wurde
- max_length - maximale Länge des Feldes
-
not_null - 1, wenn das Feld nicht
NULLsein kann - primary_key - 1, wenn das Feld ein primary key ist
- unique_key - 1, wenn das Feld ein unique key ist
- multiple_key - 1, wenn das Feld ein non-unique key ist
- numeric - 1, wenn das Feld vom Typ 'numeric' ist
- blob - 1, wenn das Feld vom Typ 'BLOB' ist
- type - der Typ des Feldes
- unsigned - 1, wenn das Feld vorzeichenlos ist
- zerofill - 1, wenn das Feld zero-filled ist
Beispiele
Beispiel #1 mysql_fetch_field() Beispiel
<?php
$conn = mysql_connect('localhost', 'mysql_user', 'mysql_password');
if (!$conn) {
die('Keine Verbindung möglich: ' . mysql_error());
}
mysql_select_db('database');
$result = mysql_query('select * from table');
if (!$result) {
die('Anfrage fehlgeschlagen: ' . mysql_error());
}
/* Metadaten der Felder */
$i = 0;
while ($i < mysql_num_fields($result)) {
echo "Information für Feld $i:<br />\n";
$meta = mysql_fetch_field($result, $i);
if (!$meta) {
echo "Keine Information vorhanden<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);
?>
Anmerkungen
Hinweis: Feldnamen, die von dieser Funktion zurückgegeben werden, unterscheiden sich in der Groß-/Kleinschreibung.
Hinweis:
Falls das Feld oder der Tabellennamen im SQL Query mit einem Alias versehen wurden, so wird dieser zurückgegeben. Der ursprüngliche Name kann durch die Verwendung von mysqli_result::fetch_field() in Erfahrung gebracht werden.