Adjusts the result pointer to an arbitrary row in the buffered result

# mysqli_stmt::data_seek

# mysqli_stmt_data_seek

(PHP 5, PHP 7, PHP 8)

mysqli_stmt::data_seek -- mysqli_stmt_data_seek — Adjusts the result pointer to an arbitrary row in the buffered result

### 说明

面向对象风格

public function mysqli_stmt::data_seek(int `$offset`): void

过程化风格

function mysqli_stmt_data_seek(mysqli_stmt `$statement`, int `$offset`): void

This function moves the result set pointer of the buffered result set to an arbitrary row specified by the `offset` parameter.

This function works only on the buffered internal result set. mysqli_stmt_store_result() must be called prior to mysqli_stmt_data_seek().

### 参数

`statement`
  仅以过程化样式：由 mysqli_stmt_init() 返回的 mysqli_stmt 对象。
`offset`

  Must be between zero and the total number of rows minus one (0.. mysqli_stmt_num_rows() - 1).

### 返回值

没有返回值。

### 示例

示例 #1 面向对象风格

    <?php

    mysqli_report(MYSQLI_REPORT_ERROR | MYSQLI_REPORT_STRICT);
    $mysqli = new mysqli("localhost", "my_user", "my_password", "world");

    $query = "SELECT Name, CountryCode FROM City ORDER BY Name";
    $stmt = $mysqli->prepare($query);
    $stmt->execute();

    $stmt->bind_result($name, $code);

    $stmt->store_result();

    /* seek to row no. 400 */
    $stmt->data_seek(399);

    $stmt->fetch();

    printf("City: %s  Countrycode: %s\n", $name, $code);

示例 #2 过程化风格

    <?php

    mysqli_report(MYSQLI_REPORT_ERROR | MYSQLI_REPORT_STRICT);
    $link = mysqli_connect("localhost", "my_user", "my_password", "world");

    $query = "SELECT Name, CountryCode FROM City ORDER BY Name";
    $stmt = mysqli_prepare($link, $query);

    mysqli_stmt_execute($stmt);

    mysqli_stmt_bind_result($stmt, $name, $code);

    mysqli_stmt_store_result($stmt);

    /* seek to row no. 400 */
    mysqli_stmt_data_seek($stmt, 399);

    mysqli_stmt_fetch($stmt);

    printf("City: %s  Countrycode: %s\n", $name, $code);

以上示例会输出：

    City: Benin City  Countrycode: NGA

### 参见

- mysqli_prepare() - 预处理执行 SQL
- mysqli_stmt_store_result() - Stores a result set in an internal buffer
- mysqli_stmt_num_rows() - Returns the number of rows fetched from the server
- mysqli_data_seek() - Adjusts the result pointer to an arbitrary row in the result

`↑` and `↓` to navigate • `Enter` to select • `Esc` to close • `/` to open