MongoDB\Driver\Monitoring\SDAMSubscriber::topologyClosed()

它在拓扑关闭事件发生时被调用

首字母:M

函数名称:MongoDB\Driver\Monitoring\SDAMSubscriber::topologyClosed()

函数描述:该函数是MongoDB PHP驱动程序的SDAMSubscriber类的方法之一。它在拓扑关闭事件发生时被调用。

适用版本:MongoDB PHP驱动程序2.4.0及更高版本。

用法:

public function topologyClosed(TopologyClosedEvent $event) : void

示例:

getTopologyId();
 $serverList = $event->getServerList();
 echo "Topology with ID $topologyId has been closed.\n";
 echo "Affected servers:\n";
 foreach ($serverList as $server) {
 echo " - {$server->getHost()}:{$server->getPort()}\n";
 }
 }
}
// 创建一个SDAMSubscriber实例
$subscriber = new MySubscriber();
// 注册SDAMSubscriber实例
$manager = new MongoDB\Driver\Manager("mongodb://localhost:27017");
$manager->subscribe($subscriber);
// 执行一些数据库操作...
// 注销SDAMSubscriber实例
$manager->unsubscribe($subscriber);
?>

说明:

  • 在上述示例中,我们创建了一个名为MySubscriber的类,该类实现了SDAMSubscriber接口,并重写了topologyClosed方法。
  • 在topologyClosed方法中,我们通过事件对象获取拓扑ID和受影响的服务器列表,并将它们打印出来。
  • 我们创建了一个SDAMSubscriber实例$subscriber,并使用MongoDB\Driver\Manager类的subscribe方法将其注册到MongoDB连接管理器中。
  • 在执行一些数据库操作后,我们使用unsubscribe方法将SDAMSubscriber实例注销掉,以停止接收拓扑关闭事件的通知。

同首字母函数