mysqli::poll

mysqli_poll

(PHP 5 >= 5.3.0, PHP 7, PHP 8)

mysqli::poll -- mysqli_pollAlmacena en caché conexiones

Descripción

Estilo orientado a objetos

publicstaticmysqli::poll(
    array&$read,
    array&$error,
    array&$reject,
    int$sec,
    int$usec = ?
): int

Estilo por procedimientos

mysqli_poll(
    array&$read,
    array&$error,
    array&$reject,
    int$sec,
    int$usec = ?
): int

Almacena en caché conexiones. Disponible sólo con mysqlnd. Este método puede usarse como estático.

Parámetros

read

Lista de conexiones a comprobar para resultados pendientes que se pueden leer.

error

Lista de conexiones en las que ocurrió un error, por ejemplo, fallo de consulta o conexión perdida.

reject

Lista de conexiones rechazadas debido a que no se ha ejecutado ninguna consulta asíncrona para la que la función podría almacenar en caché resultados.

sec

El número de segundos a esperar, debe ser no negativo.

usec

El número de microsegundos a esperar, debe ser no negativo.

Valores devueltos

Devuelve el número de conexiones si tiene éxito, false de otro modo.

Ejemplos

Ejemplo #1 Un ejemplo de mysqli_poll()

<?php
$enlace1
= mysqli_connect();
$enlace1->query("SELECT 'test'", MYSQLI_ASYNC);
$todos_los_enlaces = array($enlace1);
$procesado = 0;
do {
$enlaces = $errores = $rechazados = array();
foreach (
$todos_los_enlaces as $enlace) {
$enlaces[] = $errores[] = $rechazados[] = $enlace;
}
if (!
mysqli_poll($enlaces, $errores, $rechazados, 1)) {
continue;
}
foreach (
$enlaces as $enlace) {
if (
$resultado = $enlace->reap_async_query()) {
print_r($resultado->fetch_row());
if (
is_object($resultado))
mysqli_free_result($resultado);
} else die(
sprintf("MySQLi Error: %s", mysqli_error($enlace1)));
$procesado++;
}
} while (
$procesado < count($todos_los_enlaces));
?>

El resultado del ejemplo sería:

Array ( [0] => test )

Ver también

To Top