mysqli::poll
mysqli_poll
(PHP 5 >= 5.3.0, PHP 7, PHP 8)
mysqli::poll -- mysqli_poll — Poll connections
Description
Object-oriented style
?array
&$read
,?array
&$error
,array
&$reject
,int
$seconds
,int
$microseconds
= 0): int|false
Procedural style
?array
&$read
,?array
&$error
,array
&$reject
,int
$seconds
,int
$microseconds
= 0): int|false
Poll connections. The method can be used as static.
Note:
Available only with mysqlnd.
Parameters
-
read
-
List of connections to check for outstanding results that can be read.
-
error
-
List of connections on which an error occurred, for example, query failure or lost connection.
-
reject
-
List of connections rejected because no asynchronous query has been run on for which the function could poll results.
-
seconds
-
Maximum number of seconds to wait, must be non-negative.
-
microseconds
-
Maximum number of microseconds to wait, must be non-negative.
Return Values
Returns number of ready connections upon success, false
otherwise.
Examples
Example #1 A mysqli_poll() example
<?php
$link1 = mysqli_connect();
$link1->query("SELECT 'test'", MYSQLI_ASYNC);
$all_links = array($link1);
$processed = 0;
do {
$links = $errors = $reject = array();
foreach ($all_links as $link) {
$links[] = $errors[] = $reject[] = $link;
}
if (!mysqli_poll($links, $errors, $reject, 1)) {
continue;
}
foreach ($links as $link) {
if ($result = $link->reap_async_query()) {
print_r($result->fetch_row());
if (is_object($result))
mysqli_free_result($result);
} else die(sprintf("MySQLi Error: %s", mysqli_error($link)));
$processed++;
}
} while ($processed < count($all_links));
?>
The above example will output:
Array ( [0] => test )
See Also
- mysqli_query() - Performs a query on the database
- mysqli_reap_async_query() - Get result from async query