Set result pointer to a specified field offset

- « mysqli_result::$field_count

- mysqli_result::free »

- PHP Manual
- mysqli_result
- Set result pointer to a specified field offset

# mysqli_result::field_seek

# mysqli_field_seek

(PHP 5, PHP 7, PHP 8)

mysqli_result::field_seek -- mysqli_field_seek — Set result pointer to a specified field offset

### Description

Object-oriented style

public mysqli_result::field_seek(int `$index`): true

Procedural style

mysqli_field_seek(mysqli_result `$result`, int `$index`): true

Sets the field cursor to the given offset. The next call to mysqli_fetch_field() will retrieve the field definition of the column associated with that offset.

> Note:

> To seek to the beginning of a row, pass an offset value of zero.

### Parameters

`result`

  Procedural style only: A mysqli_result object returned by mysqli_query(), mysqli_store_result(), mysqli_use_result() or mysqli_stmt_get_result().

`index`

  The field number. This value must be in the range from `0` to `number of fields - 1`.

### Return Values

Always returns `true`.

### Changelog

Version | Description
--- | ---
8.0.0 | This function now always returns `true`. Previously it returned `false` on failure.

### Examples

Example #1 Object-oriented style

    <?php
    $mysqli = new mysqli("localhost", "my_user", "my_password", "world");

    /* check connection */
    if (mysqli_connect_errno()) {
        printf("Connect failed: %s\n", mysqli_connect_error());
        exit();
    }

    $query = "SELECT Name, SurfaceArea from Country ORDER BY Code LIMIT 5";

    if ($result = $mysqli->query($query)) {

        /* Get field information for 2nd column */
        $result->field_seek(1);
        $finfo = $result->fetch_field();

        printf("Name:     %s\n", $finfo->name);
        printf("Table:    %s\n", $finfo->table);
        printf("max. Len: %d\n", $finfo->max_length);
        printf("Flags:    %d\n", $finfo->flags);
        printf("Type:     %d\n\n", $finfo->type);

        $result->close();
    }

    /* close connection */
    $mysqli->close();
    ?>

Example #2 Procedural style

    <?php
    $link = mysqli_connect("localhost", "my_user", "my_password", "world");

    /* check connection */
    if (mysqli_connect_errno()) {
        printf("Connect failed: %s\n", mysqli_connect_error());
        exit();
    }

    $query = "SELECT Name, SurfaceArea from Country ORDER BY Code LIMIT 5";

    if ($result = mysqli_query($link, $query)) {

        /* Get field information for 2nd column */
        mysqli_field_seek($result, 1);
        $finfo = mysqli_fetch_field($result);

        printf("Name:     %s\n", $finfo->name);
        printf("Table:    %s\n", $finfo->table);
        printf("max. Len: %d\n", $finfo->max_length);
        printf("Flags:    %d\n", $finfo->flags);
        printf("Type:     %d\n\n", $finfo->type);

        mysqli_free_result($result);
    }

    /* close connection */
    mysqli_close($link);
    ?>

The above examples will output:

    Name:     SurfaceArea
    Table:    Country
    max. Len: 10
    Flags:    32769
    Type:     4

### See Also

- mysqli_fetch_field() - Returns the next field in the result set