函数名:MongoDB\Driver\Monitoring\CommandSubscriber::commandSucceeded()
适用版本:MongoDB PHP Library 1.0.0+
用法:该函数用于注册一个回调函数,当MongoDB命令成功执行时调用该回调函数。
语法:
public function commandSucceeded(MongoDB\Driver\Monitoring\CommandSucceededEvent $event) : void
参数:
- $event (MongoDB\Driver\Monitoring\CommandSucceededEvent):一个包含有关命令成功事件的信息的对象。
示例:
<?php
// 创建一个CommandSubscriber对象
$subscriber = new MongoDB\Driver\Monitoring\CommandSubscriber();
// 注册一个回调函数来处理成功的命令
$subscriber->commandSucceeded(function(MongoDB\Driver\Monitoring\CommandSucceededEvent $event) {
// 获取命令名称和执行时间
$commandName = $event->getCommandName();
$executionTimeMicros = $event->getDurationMicros();
// 输出命令执行信息
echo "Command $commandName succeeded in $executionTimeMicros microseconds." . PHP_EOL;
});
// 创建一个MongoDB\Driver\Manager对象
$manager = new MongoDB\Driver\Manager("mongodb://localhost:27017");
// 添加CommandSubscriber对象到Manager对象中
$manager->subscribe($subscriber);
// 创建一个查询命令
$query = new MongoDB\Driver\Command(["find" => "mycollection"]);
// 执行查询命令
$manager->executeCommand("mydatabase", $query);
在上面的示例中,我们创建了一个CommandSubscriber
对象并注册了一个回调函数来处理成功的命令。然后,我们创建了一个Manager
对象并将CommandSubscriber
对象添加到其中。最后,我们执行了一个查询命令,并在成功时输出了命令执行信息。
请注意,以上示例仅用于演示目的,实际应用中可能需要根据具体需求来处理成功的命令。