mysqli_thread_safe
(PHP 5 CVS only)
mysqli_thread_safe -- Returns whether thread safety is
given or not
Description
Procedural style:
bool mysqli_thread_safe ( void )
mysqli_thread_safe() indicates whether the client library
is compiled as thread-safe.
Return values
TRUE if the client library is thread-safe, otherwise FALSE.
mysqli_use_result
(PHP 5 CVS only)
mysqli_use_result
(no version information, might be only in CVS)
mysqli->use_result -- Initiate a result set retrieval
Description
Procedural style:
mixed mysqli_use_result ( object link)
Object oriented style (method):
class mysqli {
mixed use_result ( void )
}
mysqli_use_result() is used to initiate the retrieval of
a result set from the last query executed using the mysqli_real_query()
function on the database connection specified by the link
parameter. Either this or the mysqli_store_result() function
must be called before the results of a query can be retrieved,
and one or the other must be called to prevent the next
query on that database connection from failing.
Note: The mysqli_use_result() function does not transfer
the entire result set from the database and hence cannot
be used functions such as mysqli_data_seek() to move to
a particular row within the set. To use this functionality,
the result set must be stored using mysqli_store_result().
One should not use mysqli_use_result() if a lot of processing
on the client side is performed, since this will tie up
the server and prevent other threads from updating any tables
from which the data is being fetched.
Return values
Returns an unbuffered result object or FALSE if an error
occured.
See also
mysqli_real_query(), mysqli_store_result().
Example
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 CURRENT_USER();";
$query .= "SELECT Name FROM City ORDER BY ID LIMIT
20, 5";
/* execute multi query */
if ($mysqli->multi_query($query)) {
do {
/* store first result set */
if ($result = $mysqli->use_result()) {
while ($row = $result->fetch_row()) {
printf("%s\n", $row[0]);
}
$result->close();
}
/* print divider */
if ($mysqli->more_results()) {
printf("-----------------\n");
}
} while ($mysqli->next_result());
}
/* 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 CURRENT_USER();";
$query .= "SELECT Name FROM City ORDER BY ID LIMIT
20, 5";
/* execute multi query */
if (mysqli_multi_query($link, $query)) {
do {
/* store first result set */
if ($result = mysqli_use_result($link)) {
while ($row = mysqli_fetch_row($result)) {
printf("%s\n", $row[0]);
}
mysqli_free_result($result);
}
/* print divider */
if (mysqli_more_results($link)) {
printf("-----------------\n");
}
} while (mysqli_next_result($link));
}
/* close connection */
mysqli_close($link);
?>
The above examples would produce the following output:
my_user@localhost
-----------------
Amersfoort
Maastricht
Dordrecht
Leiden
Haarlemmermeer