Docs Menu
Docs Home
/
PHP Library Manual
/

Create a MongoDB Client

To connect to a MongoDB deployment, you must create the following items:

  • Connection URI, also known as a connection string, which tells the PHP library which MongoDB deployment to connect to.

  • MongoDB\Client object, which creates the connection to the MongoDB deployment and lets you perform operations on it.

You can also set options within either or both of these components to customize the way that the PHP library behaves while connected to MongoDB.

This guide describes the components of a connection string and shows how to use a MongoDB\Client object to connect to a MongoDB deployment.

A standard connection string includes the following components:

Component
Description

mongodb://

Required. A prefix that identifies this as a string in the standard connection format.

db_username:db_password

Optional. Authentication credentials. If you include these, the client authenticates the user against the database specified in authSource. For more information about the authSource connection option, see Authentication Mechanisms.

host[:port]

Required. The host and optional port number where MongoDB is running. If you don't include the port number, the driver uses the default port, 27017.

/defaultauthdb

Optional. The authentication database to use if the connection string includes db_username:db_password@ authentication credentials but not the authSource option. If you don't include this component, the client authenticates the user against the admin database.

?<options>

Optional. A query string that specifies connection-specific options as <name>=<value> pairs. See Specify Connection Options for a full description of these options.

To learn more about connection strings, see Connection Strings in the Server manual.

To create a connection to MongoDB, construct a MongoDB\Client object. Pass the following parameters to the MongoDB\Client constructor:

  • $uri: Sets the connection URI.

  • $uriOptions: (Optional) Sets URI options to configure how the client connects to MongoDB, including authentication credentials and server selection settings. If you set the same options in this parameter and in your connection string, the $uriOptions values take precedence. To view a full list of supported options, see the Specify Connection Options guide.

  • $driverOptions: (Optional) Sets options to configure the behavior of the underlying PHP extension, including data encryption settings and certificate validation options for TLS connections. To view a full list of supported options, see MongoDB\Client::__construct() in the API documentation.

This example constructs a client and passes the following parameters:

  • Connection URI, which connects to a MongoDB deployment on port 27017 of localhost

  • URI options parameter, which instructs the PHP library to wait 10000 milliseconds for server selection before generating an error

<?php
$uri = 'mongodb://localhost:27017';
$uriOptions = ['serverSelectionTimeoutMS' => 10000];
$client = new MongoDB\Client($uri, $uriOptions);

To learn more about creating a MongoDB\Client object in the PHP library, see the following API documentation:

Back

Connect

On this page