有没有办法在PHP中测试MongoDB连接?

dar*_*ale 5 php mongodb

上下文

我有一个配置文件,我在其中精确MongoDB connection string.我想测试我的MongoDB连接,使用我的代码精确到开发人员,如果是这样的话他们的配置是坏的.

我使用MongoDB驱动程序.

我没有找到关于Mongo连接测试的任何信息.

问题

我做:

<?php
$configuration = parse_ini_file("../configs/database.ini");
$mongo = new MongoDB\Client($configuration['resources.mongo.dsn']);
$db = $mongo->stats;
Run Code Online (Sandbox Code Playgroud)

但唯一的错误是那些关于格式错误的错误MongoDB connection string.例如:

  • test_bad_string,a MongoDB\Driver\Exception\InvalidArgumentException抛出

  • with mongodb://127.0.0.1:270(我的MongoDB的默认端口是27017),我没有看到任何错误

有没有办法在PHP中测试与MongoDB数据库的连接?

dar*_*ale 7

好的,我找到了测试它的方法!

<?php
$mongo = new MongoDB\Client('mongodb://my_server_does_not_exist_here:27017');
$dbs = $mongo->listDatabases();
Run Code Online (Sandbox Code Playgroud)

如果连接失败,则listDatabases抛出一个MongoDB\Driver\Exception\ConnectionTimeoutException.你只需要设置一个try/catch listDatabases.