函数名:MongoDB\Driver\Monitoring\CommandSucceededEvent::getReply()
函数描述:获取命令成功事件的响应(reply)对象。
适用版本:MongoDB PHP 扩展版本 >= 1.2.0
用法:
public function getReply(): MongoDB\Driver\Server | null
该方法返回一个 MongoDB\Driver\Server
对象或者 null
(如果未设置响应对象)。
示例:
// 创建一个事件监听器类
class CommandListener implements MongoDB\Driver\Monitoring\CommandSubscriber
{
public function commandSucceeded(MongoDB\Driver\Monitoring\CommandSucceededEvent $event)
{
$reply = $event->getReply();
if ($reply !== null) {
// 处理响应对象
var_dump($reply);
} else {
echo "未设置响应对象。";
}
}
}
// 创建一个 MongoDB 连接对象
$manager = new MongoDB\Driver\Manager("mongodb://localhost:27017");
// 注册事件监听器
$listener = new CommandListener();
$subscriber = new MongoDB\Driver\Monitoring\AddSubscriber($listener);
$manager->subscribe($subscriber);
// 执行 MongoDB 命令
$command = new MongoDB\Driver\Command(['ping' => 1]);
$manager->executeCommand("database_name", $command);
在上面的示例中,我们创建了一个事件监听器类 CommandListener
,它实现了 MongoDB\Driver\Monitoring\CommandSubscriber
接口。在 commandSucceeded
方法中,我们调用 getReply
方法来获取命令成功事件的响应对象,并对其进行处理。然后,我们创建了一个 MongoDB 连接对象 $manager
,并注册了事件监听器。最后,我们执行一个 MongoDB 命令,并触发了 commandSucceeded
事件。如果响应对象存在,我们通过 var_dump
打印出来,否则输出 "未设置响应对象"。