(PHP 5, PHP 7)
mysqli_result::fetch_field -- mysqli_fetch_field — Retorna el próximo campo del resultset
Estilo orientado a objetos
Estilo por procedimientos
Retorna la definición de una columna del resultset como un objeto. Para obtener la información de todas las columnas del resultset hay que llamar esta función reiterativamente.
result
Sólo estilo por procedimientos: Un conjunto de identificadores de resultados devuelto por mysqli_query(), mysqli_store_result() o mysqli_use_result().
Retorna un objeto que contiene la información de la columna o FALSE
en el caso de que la información no esté disponible.
Propiedad | Descripción |
---|---|
name | El nombre de la columna |
orgname | El nombre original de la columna en caso que se haya especificado un alias |
table | El nombre de la tabla al que este campo pertenece (si no es calculado) |
orgtable | El nombre original de la tabla en caso que se haya especificado un alias |
def | Reservado para el valor por omisión, por ahora es siempre "" |
db | Base de datos (desde PHP 5.3.6) |
catalog | El nombre del catálogo, siempre "def" (desde PHP 5.3.6) |
max_length | El largo máximo del campo en el resultset |
length | El largo del campo, tal como se especifica en la definición de la tabla. |
charsetnr | El número del juego de caracteres del campo. |
flags | Un entero que representa las banderas de bits del campo. |
type | El tipo de datos que se usa en este campo |
decimals | El número de decimales utilizado (para campos de tipo integer) |
Ejemplo #1 Estilo orientado a objetos
<?php
$mysqli = new mysqli("localhost", "my_user", "my_password", "world");
/* verificar la conexión */
if (mysqli_connect_errno()) {
printf("Conexión fallida: %s\n", mysqli_connect_error());
exit();
}
$query = "SELECT Name, SurfaceArea from Country ORDER BY Code LIMIT 5";
if ($result = $mysqli->query($query)) {
/* Obtener la información del campo de cada columna */
while ($finfo = $result->fetch_field()) {
printf("Nombre: %s\n", $finfo->name);
printf("Tabla: %s\n", $finfo->table);
printf("Largo max: %d\n", $finfo->max_length);
printf("Banderas: %d\n", $finfo->flags);
printf("Tipo: %d\n\n", $finfo->type);
}
$result->close();
}
/* cerrar la conexión */
$mysqli->close();
?>
Ejemplo #2 Estilo por procedimientos
<?php
$link = mysqli_connect("localhost", "my_user", "my_password", "world");
/* verificar la conexión *
if (mysqli_connect_errno()) {
printf("Conexión fallida: %s\n", mysqli_connect_error());
exit();
}
$query = "SELECT Name, SurfaceArea from Country ORDER BY Code LIMIT 5";
if ($result = mysqli_query($link, $query)) {
/* Obtener la información del campo de cada columna */
while ($finfo = mysqli_fetch_field($result)) {
printf("Nombre: %s\n", $finfo->name);
printf("Tabla: %s\n", $finfo->table);
printf("Largo max: %d\n", $finfo->max_length);
printf("Banderas: %d\n", $finfo->flags);
printf("Tipo: %d\n\n", $finfo->type);
}
mysqli_free_result($result);
}
/* cerrar la conexión */
mysqli_close($link);
?>
El resultado de los ejemplos sería:
Nombre: Name Tabla: Country Largo max: 11 Banderas: 1 Tipo: 254 Nombre: SurfaceArea Tabla: Country Largo max: 10 Banderas: 32769 Tipo: 4