Опрос подключений


mysqli_poll

(PHP 5 >= 5.3.0)

mysqli::poll -- mysqli_pollОпрос подключений

Описание

Объектно-ориентированный стиль

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

Процедурный стиль

int mysqli_poll ( array &$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$reject1)) {
        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 ) 

Смотрите также