mysqli::ping
mysqli::prepare
mysqli
PHP Manual

# mysqli::poll

# mysqli_poll

Poll connections

### Description

Object oriented style

public static int mysqli::poll ( array `&$read` , array `&$error` , array `&$reject` , int `$sec` [, int `$usec` ] )

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.

### 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
- mysqli_reap_async_query