Docs 菜单
Docs 主页
/ / /
PHP 库手册
/ /

MongoDB\Database::command()

在此页面上

  • 定义
  • 参数
  • 返回值
  • 错误/异常
  • 例子
  • 另请参阅
MongoDB\Database::command()

对数据库执行命令。 这通常用于执行库中没有相应辅助方法的命令。

function command(
array|object $command,
array $options = []
): MongoDB\Driver\Cursor
$command : array|object
数据库命令文档。
$options : array

指定所需选项的数组。

名称
类型
说明
readPreference

读取要用于操作的偏好。 默认为数据库的读取偏好。

会议

与操作相关联的客户端会话。

1.3 版本中的新增功能

typeMap
阵列

类型映射 应用于游标,决定如何将 BSON 文档转换为 PHP 值。默认为数据库的类型映射。

A MongoDB\Driver\Cursor 对象。

MongoDB\Exception\InvalidArgumentException 用于与参数或选项解析相关的错误。

MongoDB\Driver\Exception\RuntimeException 针对扩展级别的其他错误(例如连接错误)。

大多数数据库命令返回单个结果文档,可以通过将返回的游标转换为数组并访问其第一个元素来获得该结果文档。以下示例执行ping命令并打印其结果文档:

<?php
$database = (new MongoDB\Client)->test;
$cursor = $database->command(['ping' => 1]);
var_dump($cursor->toArray()[0]);

输出类似如下所示:

object(MongoDB\Model\BSONDocument)#11 (1) {
["storage":"ArrayObject":private]=>
array(1) {
["ok"]=>
float(1)
}
}

某些数据库命令会返回包含多个结果的游标。 以下示例执行listCollections ,返回一个游标,其中包含test数据库中每个集合的结果文档。 请注意,此示例是说明性的;应用程序在实践中通常会使用MongoDB\Database::listCollections()

<?php
$database = (new MongoDB\Client)->test;
$cursor = $database->command(['listCollections' => 1]);
var_dump($cursor->toArray());

输出类似如下所示:

array(3) {
[0]=>
object(MongoDB\Model\BSONDocument)#11 (1) {
["storage":"ArrayObject":private]=>
array(2) {
["name"]=>
string(11) "restaurants"
["options"]=>
object(MongoDB\Model\BSONDocument)#3 (1) {
["storage":"ArrayObject":private]=>
array(0) {
}
}
}
}
[1]=>
object(MongoDB\Model\BSONDocument)#13 (1) {
["storage":"ArrayObject":private]=>
array(2) {
["name"]=>
string(5) "users"
["options"]=>
object(MongoDB\Model\BSONDocument)#12 (1) {
["storage":"ArrayObject":private]=>
array(0) {
}
}
}
}
[2]=>
object(MongoDB\Model\BSONDocument)#15 (1) {
["storage":"ArrayObject":private]=>
array(2) {
["name"]=>
string(6) "restos"
["options"]=>
object(MongoDB\Model\BSONDocument)#14 (1) {
["storage":"ArrayObject":private]=>
array(0) {
}
}
}
}
}

后退

聚合(aggregate)()

来年

CreateCollection()