Php/docs/mysqli-stmt.fetch

来自菜鸟教程
跳转至:导航、​搜索

mysqli_stmt::fetch

mysqli_stmt_fetch

(PHP 5, PHP 7)

mysqli_stmt::fetch -- mysqli_stmt_fetchFetch results from a prepared statement into the bound variables


说明

面向对象风格

public mysqli_stmt::fetch ( ) : bool

过程化风格

mysqli_stmt_fetch ( mysqli_stmt $stmt ) : bool

Fetch the result from a prepared statement into the variables bound by mysqli_stmt_bind_result().

Note:

Note that all columns must be bound by the application before calling mysqli_stmt_fetch().

Note:

Data are transferred unbuffered without calling mysqli_stmt_store_result() which can decrease performance (but reduces memory cost).

参数

stmt
仅以过程化样式:由 mysqli_stmt_init() 返回的 statement 标识。


返回值

返回值
Value Description
true Success. Data has been fetched
false Error occurred
null No more rows/data exists or data truncation occurred


范例

Example #1 面向对象风格

<?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, CountryCode FROM City ORDER by ID DESC LIMIT 150,5";if ($stmt = $mysqli->prepare($query)) {    /* execute statement */    $stmt->execute();    /* bind result variables */    $stmt->bind_result($name, $code);    /* fetch values */    while ($stmt->fetch()) {        printf ("%s (%s)\n", $name, $code);    }    /* close statement */    $stmt->close();}/* close connection */$mysqli->close();?>

Example #2 过程化风格

<?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, CountryCode FROM City ORDER by ID DESC LIMIT 150,5";if ($stmt = mysqli_prepare($link, $query)) {    /* execute statement */    mysqli_stmt_execute($stmt);    /* bind result variables */    mysqli_stmt_bind_result($stmt, $name, $code);    /* fetch values */    while (mysqli_stmt_fetch($stmt)) {        printf ("%s (%s)\n", $name, $code);    }    /* close statement */    mysqli_stmt_close($stmt);}/* close connection */mysqli_close($link);?>

以上例程会输出:


Rockford (USA)
Tallahassee (USA)
Salinas (USA)
Santa Clarita (USA)
Springfield (USA)

参见