(PECL mongo >=1.3.0)
MongoClient::close — Ferme la connexion
$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.
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().
Retourne TRUE
si la connexion a pu être fermée.
Exemple #1 Exemple avec MongoClient::close()
Cet exemple montre comment fermer toutes les connexions vers les secondaires.
<?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
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. |