2024 年 PHP 日本大会

MongoDB\Driver\Manager 类

(mongodb >=1.0.0)

简介

MongoDB\Driver\Manager 是该扩展的主要入口点。它负责维护与 MongoDB 的连接(无论是独立服务器、副本集还是分片集群)。

实例化 Manager 时不会建立与 MongoDB 的连接。这意味着即使一个或多个 MongoDB 服务器已关闭,也可以始终构造 MongoDB\Driver\Manager

任何写入或查询都可能抛出连接异常,因为连接是延迟创建的。MongoDB 服务器也可能在脚本生命周期中变得不可用。因此,重要的是将 Manager 上的所有操作都包装在 try/catch 语句中。

类概要

final class MongoDB\Driver\Manager {
/* 方法 */
final public __construct(?string $uri = null, ?array $uriOptions = null, ?array $driverOptions = null)
final public getServers(): array
}

示例

示例 #1 MongoDB\Driver\Manager::__construct() 基本示例

使用var_dump()打印一个MongoDB\Driver\Manager对象将输出管理器的一些详细信息,这些信息通常不会公开。这对于调试驱动程序如何查看您的MongoDB设置以及使用了哪些选项非常有用。

<?php

$manager
= new MongoDB\Driver\Manager('mongodb://127.0.0.1:27017');
var_dump($manager);

?>

以上示例将输出类似于以下内容:

object(MongoDB\Driver\Manager)#1 (2) {
  ["uri"]=>
  string(26) "mongodb://127.0.0.1:27017/"
  ["cluster"]=>
  array(0) {
  }
}

目录

添加注释

用户贡献的注释 1 条注释

mike at eastghost dot com
6 年前
根据Mongo的说法,这(即MongoDB\Driver\Manager)是扩展的“入口点”

“此类充当MongoDB PHP库的入口点。它是连接到MongoDB服务器或服务器集群的首选类,并充当访问单个数据库和集合的网关。MongoDB\Client类似于驱动程序的MongoDB\Driver\Manager类,它包含了该类。”

摘自此处:https://docs.mongodb.com/php-library/master/reference/class/MongoDBClient/

但是,此处php.net上的“mongodb”文档与mongo网站上的“mongodb驱动程序”文档相比,显示出巨大且不断变化的差异。
To Top