MongoClient::close
(PECL mongoclient >=0.9.0)
MongoClient::close — Ferme la connexion
Description
$connection
] )La méthode MongoClient::close() ferme une connexion de base de données, y compris si les connexions persistentes sont utilisées. Dans une logique classique, vous ne devriez jamais utiliser cette méthode.
Liste de paramètres
-
connection
-
Si ce paramètre n'est pas fourni ou vaut
FALSE
, alors la connexion sélectionnée pour les écritures sera fermée. Dans une configuration avec un seul noeud, la connexion dans sa totalité sera fermée, mais si vous êtes connecté à un jeu de réplication, close() ne fermera only la connexion au serveur primaire.Si ce paramètre vaut
TRUE
, alors toutes les connexions connues du gestionnaire de connexion seront fermées. Cela peut inclure les connexions qui ne sont pas référencées via la chaîne de connexion, utilisée pour créer l'objet que vous souhaitez fermer.Si ce paramètre est une chaîne, alors seule la connexion identifiée par cette chaîne sera fermée. Cette chaîne identifie une connexion et peut être obtenue en appelant la méthode Mongo::getConnections().
Valeurs de retour
Retourne TRUE
si la connexion a pu être fermée.
Exemples
Exemple #1 Exemple avec MongoClient::close()
<?php // Connexion à un jeu de réplication $a = new MongoClient("mongodb://whisky:13000/?replicaset=seta"); $connections = $a->getConnections(); foreach ( $connections as $con ) { // Parcourt des connexions, et lorsque le type est "SECONDARY", // nous fermons la connexion if ( $con['connection']['connection_type_desc'] == "SECONDARY" ) { echo "Fermeture de '{$con['hash']}': "; $closed = $a->close( $con['hash'] ); echo $closed ? "ok" : "échec", "\n"; } } ?>
L'exemple ci-dessus va afficher :
Fermeture de 'whisky:13001;X;4948': ok
Historique
Version | Description |
---|---|
1.3.0 |
Le paramètre |
1.2.0 |
Avant la version 1.2.0, le driver n'utilisait pas les connexions persistentes par défaut, et toutes les connexions étaient fermées dès que une connexion MongoDB sortait du scope. Depuis la version 1.2.0, ce n'est plus le cas et c'est une mauvaise idée d'appeler la méthode close car vous pourriez finir par surcharger le serveur avec des connexions à haute charge. |
Voir aussi
- MongoClient::getConnections() - Retourne des informations sur toutes les connexions ouvertes