mysqli::poll

(PHP 5 >= 5.3.0, PHP 7)
Poll connections
public static int mysqli::poll ( array &$read, array &$error, array &$reject, int $sec [, int $usec ] )

Object oriented style

Procedural style

int mysqli_poll ( array &$read , array &$error , array &$reject , int $sec [, int $usec ] )

Poll connections. Available only with mysqlnd. The method can be used as static.

Parameters:
read

List of connections to check for outstanding results that can be read.

error

List of connections on which an error occured, 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.

sec

Number of seconds to wait, must be non-negative.

usec

Number of microseconds to wait, must be non-negative.

Returns:

Returns number of ready connections upon success, FALSE otherwise.

Examples:
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() -

mysqli_reap_async_query() -

doc_php
2016-02-24 16:19:05
Comments
Leave a Comment

Please login to continue.