Connecting to MongoDB

The MongoClient class is used to connect to the MongoDB database. It allows you to connect to MongoDB (connect method) and disconnect (comparative approach), as well as select the database (method chosen) and the collection to communicate with (select collection method).
The connection is standard:
// Connect to mongodb
$con = new MongoClient();
// select the test database
$con-> test;
We could also select the database by using the selectDB method:
$con-> selectDB(test);
Also, it would be the same as installing the database in the console using the use test command.
Once the work is done, we can close the connection using the comparative method. In principle, MongoDB can automatically close connections that do not work. However, it may be necessary to complete the link explicitly under certain conditions, such as establishing a new relationship immediately.
$con = new MongoClient();
$con-> test;
$con-> close();
By installing the dd, you can select the collection:
// Connect to mongodb
$con = new MongoClient();
// select the test database and the person's collection
$con-> test -> persons;
Either we can explicitly apply the selectCollection method
$con-> selectDB(test)-> selectCollection(persons);
Even if the collection does not yet exist, we add a document to it using the mongo console. In this circumstance, it was made automatically. In PHP, it’s the same. Also, we’ve now established a connection to the person’s collection. And even if it does not exist, it will be created if we add some data to it later.
Another method that the MongoClient class has is the listings method. It allows us to get all databases in MongoDB:
$con = new MongoClient();
print_r($con-> listDBs());
This method returns data in an associative array format:
Array
(
[databases] => Array
(
[0] => Array
(
[name] => local
[sizeOnDisk] => 83886080
[empty] =>
)
[1] => Array
(
[name] => test
[sizeOnDisk] => 218103808
[empty] =>
)
)
[totalSize] => 301989888
[ok] => 1
)
Similarly, using the listCollections method, we can obtain all collections in a particular database:
$con = new MongoClient();
$list= $con-> test-> listCollections();
foreach ($list as $collection) {
echo "<p>" . $collection . "</p>";
}
If we just want the names of all collections, we can use the getCollectionNames() method:
$con = new MongoClient();
$list= $con-> test-> getCollectionNames();
foreach ($list as $collection) {
echo "<p>" . $collection . "</p>";
}
About Enteros
Enteros offers a patented database performance management SaaS platform. It proactively identifies root causes of complex business-impacting database scalability and performance issues across a growing number of RDBMS, NoSQL, and machine learning database platforms.
The views expressed on this blog are those of the author and do not necessarily reflect the opinions of Enteros Inc. This blog may contain links to the content of third-party sites. By providing such links, Enteros Inc. does not adopt, guarantee, approve, or endorse the information, views, or products available on such sites.
Are you interested in writing for Enteros’ Blog? Please send us a pitch!
RELATED POSTS
Enteros, Database Performance, and Generative AI in Cloud FinOps for the Education Sector
- 27 February 2025
- Database Performance Management
In the fast-evolving world of finance, where banking and insurance sectors rely on massive data streams for real-time decisions, efficient anomaly man…
Optimizing Pharmaceutical Operations with Enteros: Enhancing Database Performance and Efficiency with AIOps Platforms
In the fast-evolving world of finance, where banking and insurance sectors rely on massive data streams for real-time decisions, efficient anomaly man…
Enteros for Media & Entertainment: Database Performance, Cloud FinOps, and Observability in a High-Demand Industry
- 26 February 2025
- Database Performance Management
In the fast-evolving world of finance, where banking and insurance sectors rely on massive data streams for real-time decisions, efficient anomaly man…
Enhancing Enterprise Performance in Healthcare: RevOps Strategies and Observability Platforms for Optimized Operations
In the fast-evolving world of finance, where banking and insurance sectors rely on massive data streams for real-time decisions, efficient anomaly man…