mysqli::poll
mysqli_poll
(PHP 5 >= 5.3.0)
mysqli::poll -- mysqli_poll — Almacena en caché conexiones
Descripción
Estilo orientado a objetos
&$read
, array &$error
, array &$reject
, int $sec
[, int $usec
] )Estilo por procedimientos
&$read
, array &$error
, array &$reject
, int $sec
[, int $usec
] )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
- mysqli_query() - Realiza una consulta a la base de datos
- mysqli_reap_async_query() - Obtiene el resultado de una consulta asincrónica