(PHP 5 >= 5.3.0, PHP 7)
mysqli::poll -- mysqli_poll — Опрос подключений
Объектно-ориентированный стиль
&$read
, array &$error
, array &$reject
, int $sec
[, int $usec
] )Процедурный стиль
&$read
, array &$error
, array &$reject
, int $sec
[, int $usec
] )Опрос подключений. Доступно только с расширением mysqlnd. Метод может использоваться как статический.
read
Список соединений для проверки наличия оставшихся результатов, которые можно прочитать.
error
Список соединений, на которых произошли ошибки, например, не удался запрос или соединение было потеряно.
reject
Список соединений, которые были отклонены, потому что на них не был запущен асинхронный запрос, с которым функция может получить результат опроса.
sec
Число секунд ожидания, должно быть неотрицательным.
usec
Число миллисекунд ожидания, должно быть неотрицательным.
Возвращает количество готовых к работе соединений в случае успеха,
FALSE
в случае неудачи.
Пример #1 Пример использования mysqli_poll()
<?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: %s", mysqli_error($link)));
$processed++;
}
} while ($processed < count($all_links));
?>
Результат выполнения данного примера:
Array ( [0] => test )