(mongodb >=1.0.0)
MongoDB\Driver\Manager::__construct — Crée un nouveau Manager MongoDB
$uri = null, ?array $uriOptions = null, ?array $driverOptions = null)Construit un nouvel objet MongoDB\Driver\Manager avec les options spécifiées.
Note: Avec la » Spécification de découverte et de surveillance du serveur, ce constructeur n'effectue pas d'E/S. Les connexions seront initialisées à la demande, lors de l'exécution de la première opération.
Note: Lorsque des options d'URI SSL ou TLS sont spécifiées via la chaîne de connexion ou le paramètre
uriOptions, l'extension activera implicitement TLS pour ses connexions. Pour éviter cela, désactivez explicitement l'optiontlsou ne spécifiez aucune option TLS.
Note: Sur les plate-formes Unix, l'extension MongoDB est sensible aux scripts qui utilisent l'appel système fork() sans pour autant appeler exec(). Vous ne devez pas ré-utliser des instances MongoDB\Driver\Manager dans une processus fils issue d'un fork.
uriUne URI de connexion » mongodb://:
mongodb://[username:password@]host1[:port1][,host2[:port2],...[,hostN[:portN]]][/[defaultAuthDb][?options]]
"mongodb://127.0.0.1:27017" si non spécifié.
L'uri est une URL, donc tous les caractères spéciaux dans
ses composants doivent être encodés en URL selon la
» RFC 3986. Cela est particulièrement
pertinent pour le nom d'utilisateur et le mot de passe, qui peuvent souvent inclure des caractères spéciaux tels que
@, : ou %.
Lors de la connexion via un socket de domaine Unix, le chemin du socket
peut contenir des caractères spéciaux tels que des barres obliques et doit être encodé.
La fonction rawurlencode() peut être utilisée pour encoder
les parties constitutives de l'URI.
Le composant defaultAuthDb peut être utilisé pour spécifier la
base de données associée aux informations d'identification de l'utilisateur; cependant, l'option d'URI
authSource aura la priorité si elle est spécifiée.
Si ni defaultAuthDb ni authSource ne sont spécifiés, la base de données
admin sera utilisée par défaut. Le composant defaultAuthDb
n'a aucun effet en l'absence d'informations d'identification utilisateur.
uriOptionsuri.
| Option | Type | Description |
|---|---|---|
| appname | string | MongoDB 3.4+ a la capacité d'annoter les connexions avec des métadonnées fournies par le client connecté. Ces métadonnées sont incluses dans les journaux du serveur lors de l'établissement d'une connexion et également enregistrées dans les journaux de requêtes lentes lorsque le profilage de la base de données est activé. Cette option peut être utilisée pour spécifier un nom d'application, qui sera inclus dans les métadonnées. La valeur ne peut pas dépasser 128 caractères de longueur. |
| authMechanism | string | Le mécanisme d'authentification que MongoDB utilisera pour authentifier la connexion. Pour plus de détails et une liste des valeurs prises en charge, voir » Options d'authentification dans le manuel MongoDB. |
| authMechanismProperties | array |
Les propriétés spécifiques au mécanisme d'authentification sélectionné. Pour plus
de détails et une liste des propriétés prises en charge, voir la
» Spécification d'authentification du pilote.
|
| authSource | string |
Le nom de la base de données associée aux informations d'identification de l'utilisateur. Par défaut
au composant de la base de données de l'URI de connexion, ou à la base de données
admin si les deux sont non spécifiés.
Pour les mécanismes d'authentification qui ne prennent pas en charge la notion de base de données
(e.g. GSSAPI), cela devrait être
"$external".
|
| compressors | string | Une liste priorisée et délimitée par des virgules de compresseurs que le client souhaite utiliser. Les messages ne sont compressés que si le client et le serveur partagent des compresseurs en commun, et le compresseur utilisé dans chaque direction dépendra de la configuration individuelle du serveur ou du pilote. Voir la » Spécification de compression de pilote pour plus d'informations. |
| connectTimeoutMS | int | Le temps en millisecondes pour tenter une connexion avant d'expirer. Par défaut à 10 000 millisecondes. |
| directConnection | bool |
Cette option peut être utilisée pour contrôler le comportement de découverte de l'ensemble de réplicas
lorsqu'un seul hôte est fourni dans la chaîne de connexion.
Par défaut, fournir un seul membre dans la chaîne de connexion
établira une connexion directe ou découvrira des membres supplémentaires
selon que l'option d'URI "replicaSet" est omise ou présente,
respectivement. Spécifier false pour forcer la découverte à se produire
(si "replicaSet" est omis)
ou spécifiez true pour forcer une connexion directe (si
"replicaSet" est présent).
|
| heartbeatFrequencyMS | int | Spécifie l'intervalle en millisecondes entre les vérifications de la topologie MongoDB, compté de la fin de la vérification précédente jusqu'au début de la suivante. Par défaut à 60 000 millisecondes. Pour la » Spécification de découverte et de surveillance du serveur, cette valeur ne peut pas être inférieure à 500 millisecondes. |
| journal | bool |
Correspond à l'option journal du write concern par défaut.
Si true, les écritures nécessiteront un accusé de réception de MongoDB indiquant que l'opération a été
écrite dans le journal. Pour plus de détails, voir
MongoDB\Driver\WriteConcern.
|
| loadBalanced | bool |
Spécifie si le pilote se connecte à un cluster MongoDB via
un équilibreur de charge. Si true, le pilote ne peut se connecter qu'à
un seul hôte (spécifié par la chaîne de connexion ou la recherche SRV),
l'option d'URI "directConnection" ne peut
pas être true, et l'option d'URI "replicaSet"
doit être omise. Par défaut à false.
|
| localThresholdMS | int | La taille en millisecondes de la fenêtre de latence pour la sélection parmi plusieurs instances MongoDB appropriées lors de la résolution d'une préférence de lecture. Par défaut à 15 millisecondes. |
| maxStalenessSeconds | int |
Correspond à l'option maxStalenessSeconds de la préférence de lecture.
Spécifie, en secondes, la durée de validité maximale d'une instance secondaire avant que le client ne cesse de l'utiliser pour les
opérations de lecture. Par défaut, il n'y a pas de durée de validité maximale et
les clients ne tiendront pas compte du délai d'une instance secondaire lors du choix de la direction d'une opération de lecture. Pour plus de détails, voir
MongoDB\Driver\ReadPreference.
Si spécifié, la durée de validité maximale doit être un entier signé de 32 bits
supérieur ou égal à
MongoDB\Driver\ReadPreference::SMALLEST_MAX_STALENESS_SECONDS
(par exemple 90 secondes).
|
| password | string | Le mot de passe de l'utilisateur en cours d'authentification. Cette option est utile si le mot de passe contient des caractères spéciaux, qui devraient autrement être encodés en URL pour l'URI de connexion. |
| readConcernLevel | string |
Correspond à l'option level de la préférence de lecture.
Spécifie le niveau d'isolation de lecture. Pour plus de détails, voir
MongoDB\Driver\ReadConcern.
|
| readPreference | string |
Correspond à l'option mode de la préférence de lecture.
Par défaut à "primary". Pour plus de détails, voir
MongoDB\Driver\ReadPreference.
|
| readPreferenceTags | array |
Correspond à l'option tagSets de la préférence de lecture.
Les ensembles de balises permettent de cibler les opérations de lecture sur des
membres spécifiques d'un ensemble de réplicas. Pour plus de détails,
voir MongoDB\Driver\ReadPreference.
|
| replicaSet | string | Spécifie le nom de l'ensemble de réplicas. |
| retryReads | bool |
Spécifie si le pilote doit automatiquement réessayer
certaines opérations de lecture qui échouent en raison d'erreurs réseau transitoires
ou d'élections d'ensemble de réplicas. Cette fonctionnalité nécessite MongoDB 3.6+.
Par défaut à true.
Voir la
» Spécification de lecture réessayable
pour plus d'informations.
|
| retryWrites | bool |
Spécifie si le pilote doit automatiquement réessayer
certaines opérations d'écriture qui échouent en raison d'erreurs réseau transitoires
ou d'élections d'ensemble de réplicas. Cette fonctionnalité nécessite MongoDB 3.6+.
Par défaut à true.
Voir
» Écritures réessayables
dans le manuel MongoDB pour plus d'informations.
|
| serverSelectionTimeoutMS | int | Spécifie combien de temps en millisecondes bloquer pour la sélection du serveur avant de lancer une exception. Par défaut à 30 000 millisecondes. |
| serverSelectionTryOnce | bool |
Lorsque true, indique au pilote de scanner le déploiement MongoDB
exactement une fois après un échec de sélection du serveur, puis de sélectionner
un serveur ou de lancer une exception. Lorsque false, le pilote bloque et
recherche un serveur jusqu'à la valeur de
"serverSelectionTimeoutMS". Par défaut à
true.
|
| socketCheckIntervalMS | int |
Si un socket n'a pas été utilisé récemment, le pilote doit le vérifier via
une commande hello avant de l'utiliser pour toute
opération. Par défaut à 5 000 millisecondes.
|
| socketTimeoutMS | int | Le temps en millisecondes pour tenter un envoi ou une réception sur un socket avant d'expirer. Par défaut à 300 000 millisecondes (c.-à-d. cinq minutes). |
| srvMaxHosts | int |
Le nombre maximum de résultats SRV à sélectionner aléatoirement lors de la
première population de la liste de semences ou, lors du sondage SRV, l'ajout de nouveaux hôtes à
la topologie. Par défaut à 0 (c.-à-d. pas de maximum).
|
| srvServiceName | string |
Le nom de service à utiliser pour la recherche SRV dans la liste de semences initiale
et le sondage SRV. Par défaut à "mongodb".
|
| tls | bool |
Initialise la connexion avec TLS/SSL si true. Par défaut à
false.
|
| tlsAllowInvalidCertificates | bool |
Spécifie si le pilote doit générer une erreur lorsque le certificat
TLS du serveur est invalide. Par défaut à false.
Avertissement
Désactiver la validation du certificat créant une vulnérabilité. |
| tlsAllowInvalidHostnames | bool |
Spécifie si le pilote doit générer une erreur lorsqu'il y a un
désaccord entre le nom d'hôte du serveur et le nom d'hôte spécifié par
le certificat TLS. Par défaut à false.
Avertissement
Désactive la validation du certificat créant une vulnérabilité. Autoriser les noms d'hôte invalides peut exposer le pilote à une » attaque de l'homme du milieu. |
| tlsCAFile | string | Le chemin du fichier contenant un seul certificat ou un ensemble de certificats d'autorités à considérer comme fiables lors de l'établissement d'une connexion TLS. Le magasin de certificats système sera utilisé par défaut. |
| tlsCertificateKeyFile | string | Le chemin du fichier de certificat client ou du fichier de clé privée client; dans le cas où les deux sont nécessaires, les fichiers doivent être concaténés. |
| tlsCertificateKeyFilePassword | string |
Le mot de passe pour déchiffrer la clé privée client (c.-à-d.
l'option d'URI "tlsCertificateKeyFile") à utiliser
pour les connexions TLS.
|
| tlsDisableCertificateRevocationCheck | bool |
Si true, le pilote n'essaiera pas de vérifier l'état de révocation du certificat
(e.g. OCSP, CRL). Par défaut à false.
|
| tlsDisableOCSPEndpointCheck | bool |
Si true, le pilote n'essaiera pas de contacter un point de terminaison de répondeur OCSP
si nécessaire (c.-à-d. une réponse OCSP n'est pas agrafée). Par défaut à false.
|
| tlsInsecure | bool |
Détend les contraintes TLS autant que possible. Spécifier true pour
que cette option ait le même effet que de spécifier true pour les
options d'URI "tlsAllowInvalidCertificates" et
"tlsAllowInvalidHostnames". Par défaut à false.
Avertissement
Désactive la validation du certificat créant une vulnérabilité. Autoriser les noms d'hôte invalides peut exposer le pilote à une » attaque de l'homme du milieu. |
| username | string | Le nom d'utilisateur de l'utilisateur en cours d'authentification. Cette option est utile si le nom d'utilisateur contient des caractères spéciaux, qui devraient autrement être encodés en URL pour l'URI de connexion. |
| w | int|string |
Correspond à l'option w du write concern par défaut.
Pour plus de détails, voir
MongoDB\Driver\WriteConcern.
|
| wTimeoutMS | int|string |
Correspond à l'option wtimeout du write concern
par défaut. Spécifie une limite de temps,
en millisecondes, pour le write concern. Pour plus de détails, voir
MongoDB\Driver\WriteConcern.
Si spécifié, wTimeoutMS doit être un entier signé de 32 bits
supérieur ou égal à zéro.
|
| zlibCompressionLevel | int |
Spécifie le niveau de compression à utiliser pour le compresseur zlib. Cette
option n'a aucun effet si zlib n'est pas inclus dans
l'option d'URI "compressors". Voir la
» Spécification de compression de pilote
pour plus d'informations.
|
driverOptions
| Option | Type | Description |
|---|---|---|
| autoEncryption | array |
Apporte des options pour activer le chiffrement côté client au niveau
des champs. La liste des options est décrite dans la
table en dessous.
|
| ca_dir | string | Le chemin du répertoire de certificats correctement hachés. Le magasin de certificats système sera utilisé par défaut. |
| crl_file | string | Le chemin du fichier de liste de révocation de certificat. |
| disableClientPersistence | bool |
Si true, ce Manager utilisera un nouveau client libmongoc, qui ne sera
pas persisté ou partagé avec d'autres objets Manager. Lorsque cet
objet Manager est libéré, son client sera détruit et toutes
les connexions seront fermées. Par défaut à false.
|
| driver | array |
Autorise un niveau supérieur de bibliothèque à ajouter ses propres métadonnées
à la poignée de main du serveur. Par défaut, l'extension soumet son propre nom,
version et plateforme (c.-à-d. version PHP) dans la poignée de main. Les chaînes
peuvent être spécifiées pour les clés "name",
"version" et "platform" de ce tableau, et seront
ajoutées au champ respectif(s)
de la poignée de main du serveur.
|
| serverApi | MongoDB\Driver\ServerApi | Cette option est utilisée pour déclarer une version d'API serveur pour le Manager. Si omis, aucune version d'API n'est déclarée. |
Les options suivantes sont prises en charge:
| Option | Type | Description |
|---|---|---|
| keyVaultClient | MongoDB\Driver\Manager | Le Manager utilisé pour router les requêtes de clés de données à un cluster MongoDB différent. Par défaut, le Manager et cluster courant et utilisé. |
| keyVaultNamespace | chaîne de caractères | Un nom d'espace complètement qualifié (par exemple "databaseName.collectionName") dénotant la collection qui contient toutes les clés de données utilisé pour le chiffrement et déchiffrement. Cette option est requise. |
| kmsProviders | tableau |
Un document contenant la configuration d'un ou plusieurs
fournisseurs KMS, qui sont utilisés pour chiffrer les clés de données.
Les fournisseurs supporté sont
Si un document vide est spécifié pour
Le format pour aws: {
accessKeyId: <string>,
secretAccessKey: <string>,
sessionToken: <optional string>
}
Le format pour azure: {
tenantId: <string>,
clientId: <string>,
clientSecret: <string>,
identityPlatformEndpoint: <optional string> // Defaults to "login.microsoftonline.com"
}
Le format pour gcp: {
email: <string>,
privateKey: <base64 string>|<MongoDB\BSON\Binary>,
endpoint: <optional string> // Defaults to "oauth2.googleapis.com"
}
Le format pour kmip: {
endpoint: <string>
}
Le format pour local: {
// 96-byte master key used to encrypt/decrypt data keys
key: <base64 string>|<MongoDB\BSON\Binary>
}
|
| tlsOptions | array |
Un document contenant la configuration TLS d'un ou plusieurs
fournisseurs KMS.
Les fournisseurs supporté sont <provider>: {
tlsCaFile: <optional string>,
tlsCertificateKeyFile: <optional string>,
tlsCertificateKeyFilePassword: <optional string>,
tlsDisableOCSPEndpointCheck: <optional bool>
}
|
| schemaMap | array|object |
Mappe les espaces de noms de collection à un schéma JSON local. Ceci est
utilisé pour configurer le chiffrement automatique. Voir
» Règles de chiffrement automatique
dans le manuel MongoDB pour plus d'informations. Il est une erreur de
spécifier une collection à la fois dans schemaMap et
encryptedFieldsMap.
|
| bypassAutoEncryption | bool |
Si true, mongocryptd ne sera pas lancé
automatiquement. Ceci est utilisé pour désactiver le chiffrement automatique.
Par défaut à false.
|
| bypassQueryAnalysis | bool |
Si true, l'analyse automatique des commandes sortantes sera désactivée et
mongocryptd ne sera pas lancé automatiquement. Cela permet
le cas d'utilisation du chiffrement explicite pour interroger des champs indexés sans nécessiter
la bibliothèque crypt_shared sous licence entreprise ou
le processus mongocryptd. Par défaut à false.
|
| encryptedFieldsMap | array|object |
Mappe les espaces de noms de collection à un document
encryptedFields. Ceci est utilisé pour
configurer le chiffrement interrogeable. Voir
» Chiffrement de champ et interrogeabilité
dans le manuel MongoDB pour plus d'informations. Il est une erreur de
spécifier une collection à la fois dans
encryptedFieldsMap et
schemaMap.
|
| extraOptions | array |
Le extraOptions se rapportent au
processus mongocryptd. Les options suivantes
sont prises en charge:
|
Note: Le chiffrement automatique est une fonctionnalité d'entreprise qui ne s'applique qu'aux opérations sur une collection. Le chiffrement automatique n'est pas pris en charge pour les opérations sur une base de données ou une vue, et les opérations qui ne sont pas contournées entraîneront une erreur. Pour contourner le chiffrement automatique pour toutes les opérations, définissez
bypassAutoEncryption=truedansautoEncryption. Pour plus d'informations sur les opérations autorisées, voir la » Spécification de chiffrement côté client.
| Version | Description |
|---|---|
| PECL mongodb 2.0.0 |
L'option d'URI "authMechanismProperties" a été supprimée.
Utiliser la propriété "CANONICALIZE_HOST_NAME" de l'option d'URI
"authMechanismProperties" plutôt.
L'option d'URI "authMechanism" a été supprimée.
Utiliser la propriété "SERVICE_NAME" de l'option d'URI
"authMechanismProperties" plutôt.
L'option d'URI "authSource" a été supprimée.
Utiliser les options d'URI "w" et "wTimeoutMS"
plutôt.
L'option d'URI "ssl" a été supprimée. Utiliser l'option
d'URI "tls" plutôt.
L'option de pilote "allow_invalid_hostname" a
été supprimée. Utiliser l'option d'URI
"tlsAllowInvalidHostnames" plutôt.
L'option de pilote "ca_file" a
été supprimée. Utiliser l'option d'URI
"tlsCAFile" plutôt.
L'option de pilote "context" a été supprimée. Toutes les
options de contexte ont été dépréciées en faveur des diverses options
d'URI liées à TLS.
L'option de pilote "pem_file" a été supprimée. Utiliser
l'option d'URI "tlsCertificateKeyFile" plutôt.
L'option de pilote "pem_pwd" a été supprimée. Utiliser
l'option d'URI "tlsCertificateKeyFilePassword" plutôt.
L'option de pilote "weak_cert_validation" a été supprimée.
Utiliser l'option d'URI "tlsAllowInvalidCertificates"
plutôt.
|
| PECL mongodb 1.16.0 |
Le fournisseur AWS KMS pour le chiffrement côté client accepte désormais une
option "sessionToken", qui peut être utilisée pour
s'authentifier avec des informations d'identification AWS temporaires.
Ajout de "tlsDisableOCSPEndpointCheck" au
champ "tlsOptions" de l'option de pilote
"autoEncryption".
Si un document vide est spécifié pour le fournisseur KMS "azure" ou
"gcp", le pilote tentera de configurer le fournisseur en utilisant
» les informations d'identification automatiques.
|
| PECL mongodb 1.15.0 |
Si un document vide est spécifié pour le fournisseur KMS "aws", le pilote
tentera de configurer le fournisseur en utilisant
» les informations d'identification automatiques.
|
| PECL mongodb 1.14.0 |
Ajout des options de chiffrement côté client "bypassQueryAnalysis" et
"encryptedFieldsMap".
Des options supplémentaires concernant crypt_shared sont
désormais prises en charge dans l'option de chiffrement côté client
"extraOptions".
|
| PECL mongodb 1.13.0 |
Ajout des options d'URI "srvMaxHosts" et
"srvServiceName".
|
| PECL mongodb 1.12.0 |
KMIP est désormais pris en charge en tant que fournisseur KMS pour le chiffrement côté client et
peut être configuré dans le champ "kmsProviders" de l'option de pilote
"autoEncryption". De plus, les options TLS
pour les fournisseurs KMS peuvent désormais être configurées dans le
champ "tlsOptions" de l'option de pilote
"autoEncryption".
|
| PECL mongodb 1.11.0 |
Ajout de l'option d'URI "loadBalanced".
|
| PECL mongodb 1.10.0 |
Ajout de l'option de pilote "disableClientPersistence".
Azure et GCP sont désormais pris en charge en tant que fournisseurs KMS pour
le chiffrement côté client et peuvent être configurés dans le champ
"kmsProviders" de l'option de pilote
"autoEncryption". Les chaînes encodées en base64 sont désormais acceptées
en tant qu'alternative à MongoDB\BSON\Binary pour les options dans
"kmsProviders".
|
| PECL mongodb 1.8.0 |
Ajout des options d'URI "directConnection",
"tlsDisableCertificateRevocationCheck" et
"tlsDisableOCSPEndpointCheck".
Ajout de l'option de pilote "driver".
|
| PECL mongodb 1.7.0 |
Ajout de l'option de pilote "autoEncryption".
Spécifier n'importe quelle option SSL ou TLS via le paramètre
driverOptions activera désormais implicitement TLS, comme
c'est le cas pour les options d'URI correspondantes.
|
| PECL mongodb 1.6.0 |
Ajout des options d'URI "retryReads", "tls",
"tlsAllowInvalidCertificates",
"tlsAllowInvalidHostnames",
"tlsCAFile",
"tlsCertificateKeyFile",
"tlsCertificateKeyFilePassword", et
"tlsInsecure".
L'option d'URI "retryWrites" est désormais à true par défaut.
Spécifier une option d'URI SSL ou TLS via la chaîne de connexion ou
le paramètre uriOptions activera désormais
implicitement TLS à moins que ssl ou tls ne soit false.
TLS n'est pas implicitement activé pour les options dans
le paramètre driverOptions, ce qui est inchangé
par rapport aux versions précédentes.
|
| PECL mongodb 1.5.0 |
"wtimeoutMS" est désormais toujours validé et appliqué au
write concern. Auparavant, l'option était ignorée si
"w" était <= 1, car le délai s'applique uniquement à
la réplication.
|
| PECL mongodb 1.4.0 |
Ajout des options d'URI "compressors",
"retryWrites", er
"zlibCompressionLevel".
|
| PECL mongodb 1.3.0 |
L'argument uriOptions accepte désormais
les options "authMechanism" et
"authMechanismProperties". Auparavant, ces
options n'étaient prises en charge que dans l'argument
uri.
|
| PECL mongodb 1.2.0 |
L'argument uri est désormais facultatif et
par défaut à "mongodb://. Le port par défaut reste
27017.
Ajout de l'option d'URI "appname".
Ajout des options de pilote "allow_invalid_hostname",
"ca_file", "ca_dir",
"clr_file", "pem_file",
"pem_pwd", et
"weak_cert_validation".
L'API des flux PHP n'est plus utilisée pour la communication par socket. L'option
"connectTimeoutMS" de l'URI est désormais par défaut à 10
secondes au lieu de
default_socket_timeout
dans les versions précédentes. De plus, l'extension ne prend plus en charge
toutes les options de contexte SSL via
l'option de pilote "context".
|
| PECL mongodb 1.1.0 |
L'argument uri est désormais facultatif et par défaut à
"mongodb://localhost:27017/".
|
Exemple #1 Exemples basiques MongoDB\Driver\Manager::__construct()
Connexion à un nœud MongoDB autonome:
<?php
$manager = new MongoDB\Driver\Manager("mongodb://example.com:27017");
?>Connexion à un nœud MongoDB autonome via un socket de domaine Unix. Le chemin du socket peut inclure des caractères spéciaux tels que des barres obliques et doit être encodé avec rawurlencode().
<?php
$manager = new MongoDB\Driver\Manager("mongodb://" . rawurlencode("/tmp/mongodb-27017.sock"));
?>Connexion à un ensemble de réplicas:
<?php
$manager = new MongoDB\Driver\Manager("mongodb://rs1.example.com,rs2.example.com/?replicaSet=myReplicaSet");
?>Connexion à un cluster fragmenté (c'est-à-dire un ou plusieurs instances mongos):
<?php
$manager = new MongoDB\Driver\Manager("mongodb://mongos1.example.com,mongos2.example.com/");
?>Connexion à MongoDB avec des informations d'authentification pour un utilisateur et une base de données particuliers:
<?php
$manager = new MongoDB\Driver\Manager("mongodb://myusername:mypassword@example.com/?authSource=databaseName");
?>
Connexion à MongoDB avec des informations d'authentification pour un utilisateur
et une base de données particuliers, où le nom d'utilisateur ou le mot de passe inclut
des caractères spéciaux (par exemple @, :,
%). Dans l'exemple suivant, la chaîne de mot de passe
myp@ss:w%rd a été manuellement échappée; cependant,
rawurlencode() peut également être utilisé pour échapper
les composants d'URI qui peuvent contenir des caractères spéciaux.
<?php
$manager = new MongoDB\Driver\Manager("mongodb://myusername:myp%40ss%3Aw%25rd@example.com/?authSource=databaseName");
?>Connexion à MongoDB avec l'authentification X509:
<?php
$manager = new MongoDB\Driver\Manager(
"mongodb://example.com/?ssl=true&authMechanism=MONGODB-X509",
[],
[
"pem_file" => "/path/to/client.pem",
]
);
?>