mysqli_stmt::bind_result
, mysqli_stmt_bind_result
mysqli_stmt::bind_result
mysqli_stmt_bind_result
Binds variables to a prepared statement for result storage
Description
Object oriented stylebool mysqli_stmt::bind_result(mixed var1,
mixed ...);
Procedural stylebool mysqli_stmt_bind_result(mysqli_stmt stmt,
mixed var1,
mixed ...);
Binds columns in the result set to variables.
When mysqli_stmt_fetch
is called to fetch data, the MariaDB client/server protocol places the data for the bound columns into the specified variables var1, ...
.Note
Note that all columns must be bound after mysqli_stmt_execute
and prior to calling mysqli_stmt_fetch
. Depending on column types bound variables can silently change to the corresponding PHP type.
A column can be bound or rebound at any time, even after a result set has been partially retrieved. The new binding takes effect the next time mysqli_stmt_fetch
is called.
Parameters
stmt
-
Procedural style only: A statement identifier returned by
mysqli_stmt_init
. var1
-
The variable to be bound.
Return Values
Returns TRUE
on success or FALSE
on failure.
Examples
Example 20.146. Object oriented style
<?php $mysqli = new mysqli('localhost', 'my_user', 'my_password', 'world'); if (mysqli_connect_errno()) { printf('Connect failed: %s\n', mysqli_connect_error()); exit(); } /* prepare statement */ if ($stmt = $mysqli->prepare('SELECT Code, Name FROM Country ORDER BY Name LIMIT 5')) { $stmt->execute(); /* bind variables to prepared statement */ $stmt->bind_result($col1, $col2); /* fetch values */ while ($stmt->fetch()) { printf('%s %s\n', $col1, $col2); } /* close statement */ $stmt->close(); } /* close connection */ $mysqli->close(); ?>
Example 20.147. Procedural style
<?php $link = mysqli_connect('localhost', 'my_user', 'my_password', 'world'); /* check connection */ if (!$link) { printf('Connect failed: %s\n', mysqli_connect_error()); exit(); } /* prepare statement */ if ($stmt = mysqli_prepare($link, 'SELECT Code, Name FROM Country ORDER BY Name LIMIT 5')) { mysqli_stmt_execute($stmt); /* bind variables to prepared statement */ mysqli_stmt_bind_result($stmt, $col1, $col2); /* fetch values */ while (mysqli_stmt_fetch($stmt)) { printf('%s %s\n', $col1, $col2); } /* close statement */ mysqli_stmt_close($stmt); } /* close connection */ mysqli_close($link); ?>
The above examples will output:
AFG Afghanistan ALB Albania DZA Algeria ASM American Samoa AND Andorra
See Also
mysqli_stmt_bind_param
|
mysqli_stmt_execute
|
mysqli_stmt_fetch
|
mysqli_prepare
|
mysqli_stmt_prepare
|
mysqli_stmt_init
|
mysqli_stmt_errno
|
mysqli_stmt_error |