SunshinePHP Developer Conference 2015

mysqli::$thread_id

mysqli_thread_id

(PHP 5)

mysqli::$thread_id -- mysqli_thread_idRetourne l'identifiant du thread pour la connexion courante

Description

Style orienté objet

Style procédural

int mysqli_thread_id ( mysqli $link )

La fonction mysqli_thread_id() retourne l'identifiant du thread de la connexion courante qui peut être terminé par la suite en utilisant la fonction mysqli_kill(). Si la connexion est perdue et que vous vous reconnectez avec la fonction mysqli_ping(), l'identifiant du thread sera différent. Ainsi, vous devez récupérer l'identifiant du thread uniquement lorsque vous en avez besoin.

Note:

L'identifiant du thread est assigné sur une base de connexion par connexion. Ce qui fait que si la connexion est coupée, puis relancée, un nouvel identifiant de thread lui sera assigné.

Pour terminer une requête en cours d'exécution, vous pouvez utiliser la commande SQL KILL QUERY processid.

Liste de paramètres

link

Seulement en style procédural : Un identifiant de lien retourné par la fonction mysqli_connect() ou par la fonction mysqli_init()

Valeurs de retour

Retourne l'identifiant du thread pour la connexion courante.

Exemples

Exemple #1 Exemple avec $mysqli->thread_id

Style orienté objet

<?php
$mysqli 
= new mysqli("localhost""my_user""my_password""world");

/* Vérification de la connexion */
if (mysqli_connect_errno()) {
    
printf("Échec de la connexion : %s\n"mysqli_connect_error());
    exit();
}

/* Détermine l'identifiant du thread */
$thread_id $mysqli->thread_id;

/* Termine la connexion */
$mysqli->kill($thread_id);

/* Ceci doit produire une erreur */
if (!$mysqli->query("CREATE TABLE myCity LIKE City")) {
    
printf("Erreur : %s\n"$mysqli->error);
    exit;
}

/* Fermeture de la connexion */
$mysqli->close();
?>

Style procédural

<?php
$link 
mysqli_connect("localhost""my_user""my_password""world");

/* Vérification de la connexion */
if (mysqli_connect_errno()) {
    
printf("Échec de la connexion : %s\n"mysqli_connect_error());
    exit();
}

/* Détermine l'identifiant du thread */
$thread_id mysqli_thread_id($link);

/* Termine la connexion */
mysqli_kill($link$thread_id);

/* Ceci doit produire une erreur */
if (!mysqli_query($link"CREATE TABLE myCity LIKE City")) {
    
printf("Erreur : %s\n"mysqli_error($link));
    exit;
}

/* Fermeture de la connexion */
mysqli_close($link);
?>

Les exemples ci-dessus vont afficher :

Erreur : MySQL server has gone away

Voir aussi

add a note add a note

User Contributed Notes

There are no user contributed notes for this page.
To Top