Php/docs/function.mysql-fetch-field

From Get docs

mysql_fetch_field

(PHP 4, PHP 5)

mysql_fetch_fieldGet column information from a result and return as an object


Warning This extension was deprecated in PHP 5.5.0, and it was removed in PHP 7.0.0. Instead, the MySQLi or PDO_MySQL extension should be used. See also MySQL: choosing an API guide and related FAQ for more information. Alternatives to this function include:


Description

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

Returns an object containing field information. This function can be used to obtain information about fields in the provided query result.


Parameters

result
The result resource that is being evaluated. This result comes from a call to mysql_query().
field_offset
The numerical field offset. If the field offset is not specified, the next field that was not yet retrieved by this function is retrieved. The field_offset starts at 0.


Return Values

Returns an object containing field information. The properties of the object are:

  • name - column name
  • table - name of the table the column belongs to, which is the alias name if one is defined
  • max_length - maximum length of the column
  • not_null - 1 if the column cannot be NULL
  • primary_key - 1 if the column is a primary key
  • unique_key - 1 if the column is a unique key
  • multiple_key - 1 if the column is a non-unique key
  • numeric - 1 if the column is numeric
  • blob - 1 if the column is a BLOB
  • type - the type of the column
  • unsigned - 1 if the column is unsigned
  • zerofill - 1 if the column is zero-filled


Examples

Example #1 mysql_fetch_field() example

<?php$conn = mysql_connect('localhost', 'mysql_user', 'mysql_password');if (!$conn) {    die('Could not connect: ' . mysql_error());}mysql_select_db('database');$result = mysql_query('select * from table');if (!$result) {    die('Query failed: ' . mysql_error());}/* get column metadata */$i = 0;while ($i < mysql_num_fields($result)) {    echo "Information for column $i:<br />\n";    $meta = mysql_fetch_field($result, $i);    if (!$meta) {        echo "No information available<br />\n";    }    echo "<pre>blob:         $meta->blobmax_length:   $meta->max_lengthmultiple_key: $meta->multiple_keyname:         $meta->namenot_null:     $meta->not_nullnumeric:      $meta->numericprimary_key:  $meta->primary_keytable:        $meta->tabletype:         $meta->typeunique_key:   $meta->unique_keyunsigned:     $meta->unsignedzerofill:     $meta->zerofill</pre>";    $i++;}mysql_free_result($result);?>

Notes

Note:

Field names returned by this function

are case-sensitive.

Note:

If field or tablenames are aliased in the SQL query the aliased name will be returned. The original name can be retrieved for instance by using mysqli_result::fetch_field().

See Also