Función mysql_fetch_field() de PHP
Definición y uso
La función mysql_fetch_field() obtiene información sobre las columnas del conjunto de resultados y la devuelve como objeto.
mysql_fetch_field() se puede usar para obtener información sobre los campos de los resultados de la consulta. Si no se especifica un desplazamiento de campo, se extrae el siguiente campo que no ha sido obtenido con mysql_fetch_field().
Esta función devuelve un objeto que contiene información sobre los campos.
las propiedades del objeto devuelto son:
- name - el nombre de la columna
- table - el nombre de la tabla en la que se encuentra la columna
- max_length - la longitud máxima de la columna
- not_null - 1, si la columna no puede ser NULL
- primary_key - 1, si la columna es clave primaria
- unique_key - 1, si la columna es clave única
- multiple_key - 1, si la columna es clave no única
- numeric - 1, si la columna es numérica
- blob - 1, si la columna es BLOB
- type - El tipo de la columna
- unsigned - 1, si la columna es un número sin signo
- zerofill - 1, si la columna es zero-filled
Sintaxis
mysql_fetch_field(datafield_offset)
, | Descripción |
---|---|
data | Obligatorio. El puntero de datos a usar. Este puntero de datos es desde mysql_query() devuelto por el resultado. |
field_offset | Obligatorio. Especifica desde qué campo comenzar. 0 indica el primer campo. Si no se establece, se recupera el siguiente campo. |
Sugerencias y comentarios
Comentarios:El nombre del campo devuelto por esta función es sensible a mayúsculas y minúsculas.
Ejemplo
<?php $con = mysql_connect("localhost", "hello", "321"); if (!$con) { die('No se pudo conectar: ' . 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 "Nombre de campo: " . $property->name . "<br />"; echo "Nombre de tabla: " . $property->table . "<br />"; echo "Valor predeterminado: " . $property->def . "<br />"; echo "Longitud máxima: " . $property->max_length . "<br />"; echo "No NULL: " . $property->not_null . "<br />"; echo "Clave primaria: " . $property->primary_key . "<br />"; echo "Clave única: " . $property->unique_key . "<br />"; echo "Clave múltiple: " . $property->multiple_key . "<br />"; echo "Campo numérico: " . $property->numeric . "<br />"; echo "BLOB: " . $property->blob . "<br />"; echo "Tipo de campo: " . $property->type . "<br />"; echo "Sin signo: " . $property->unsigned . "<br />"; echo "Cero rellenado: " . $property->zerofill . "<br /><br />"; } mysql_close($con); ?>
Salida:
Nombre del campo: Apellido Nombre de la tabla: Person Valor predeterminado: Longitud máxima: 8 No NULL: 0 Clave principal: 0 Clave única: 0 Clave múltiple: 0 Campo numérico: 0 BLOB: 0 Tipo de campo: string Sin signo: 0 Cero rellenado: 0 Nombre del campo: Nombre Nombre de la tabla: Person Valor predeterminado: Longitud máxima: 7 No NULL: 0 Clave principal: 0 Clave única: 0 Clave múltiple: 0 Campo numérico: 0 BLOB: 0 Tipo de campo: string Sin signo: 0 Cero rellenado: 0 Nombre del campo: Ciudad Nombre de la tabla: Person Valor predeterminado: Longitud máxima: 9 No NULL: 0 Clave principal: 0 Clave única: 0 Clave múltiple: 0 Campo numérico: 0 BLOB: 0 Tipo de campo: string Sin signo: 0 Cero rellenado: 0 Nombre del campo: Edad Nombre de la tabla: Person Valor predeterminado: Longitud máxima: 2 No NULL: 0 Clave principal: 0 Clave única: 0 Clave múltiple: 0 Campo numérico: 1 BLOB: 0 Tipo de campo: int Sin signo: 0 Cero rellenado: 0