PHP Manual
Prev |  | Next

# mysql_fetch_field

(PHP 3 <= 3.0.18, PHP 4 >= 4.0.0)

mysql_fetch_field -- Get column information from a result and return as an object

## Description

``object mysql_fetch_field` (resource result, int [field_offset])`

Returns an object containing field information.

mysql_fetch_field() can be used in order to obtain information about fields in a certain query result. If the field offset isn't specified, the next field that wasn't yet retrieved by mysql_fetch_field() is retrieved.

The properties of the object are:

- name - column name

- table - name of the table the column belongs to

- 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

Example 1. mysql_fetch_field()
    <?php
    mysql_connect('localhost:3306', $user, $password)
        or die ("Could not connect");
    mysql_select_db("database");
    $result = mysql_query("select * from table")
        or die("Query failed");
    # get column metadata
    $i = 0;
    while ($i < mysql_num_fields($result)) {
        echo "Information for column $i:<BR>\n";
        $meta = mysql_fetch_field($result);
        if (!$meta) {
            echo "No information available<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);
    ?>

See also mysql_field_seek().

Prev | Home | Next
mysql_fetch_assoc | Up | mysql_fetch_lengths