mysqli::poll

mysqli_poll

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

mysqli::poll -- mysqli_pollVérifie l'état de la connexion

Description

Style orienté objet

public static mysqli::poll(
    ?array &$read,
    ?array &$error,
    array &$reject,
    int $seconds,
    int $microseconds = 0
): int|false

Style procédural

mysqli_poll(
    ?array &$read,
    ?array &$error,
    array &$reject,
    int $seconds,
    int $microseconds = 0
): int|false

Vérifie l'état de la connexion. La méthode peut être utilisée comme statique.

Note:

Disponible uniquement avec mysqlnd.

Liste de paramètres

read

Liste des connexions à vérifier pour les résultats exceptionnels qui peuvent être lus.

error

Liste des connexions sur lesquelles une erreur est survenue, par exemple, des échecs de requêtes, ou des pertes de connexion.

reject

Liste des connexions rejetées car des requêtes non-asynchrones y ont été exécutées et pour lesquelles la fonction pourrait sortir des résultats.

seconds

Nombre de secondes d'attente maximale, doit être positif.

microseconds

Nombre de micro-secondes d'attente maximale, doit être positif.

Valeurs de retour

Retourne le nombre de connexions disponibles en cas de succès, false sinon.

Exemples

Exemple #1 Exemple avec 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("Erreur MySQLi : %s", mysqli_error($link)));
$processed++;
}
} while (
$processed < count($all_links));
?>

L'exemple ci-dessus va afficher :

Array
(
    [0] => test
)

Voir aussi