Menu Docs
Página inicial do Docs
/ / /
Manual da Biblioteca PHP
/ /

MongoDB\Database::command()

Nesta página

  • Definição
  • Parâmetros
  • Return Values
  • Erros/exceções
  • Exemplo
  • Veja também
MongoDB\Database::command()

Execute umcomando no banco de dados. Isso geralmente é usado para executar comandos que não têm um método de ajuda correspondente dentro da biblioteca.

function command(
array|object $command,
array $options = []
): MongoDB\Driver\Cursor
$command : array|object
O documento de comando de banco de dados de dados.
$options : array

Uma array especificando as opções desejadas.

Nome
Tipo
Descrição

readPreference

Preferência de leitura a ser usada na operação. O padrão é a preferência de leitura do banco de dados.

session

Sessão do cliente a ser associada à operação.

Novidade na versão 1.3.

typeMap

array

O mapa de tipos aplicar aos cursores, o que determina como os documentos BSON são convertidos em valores PHP. O padrão é o mapa de tipos do banco de dados.

Um MongoDB\Driver\Cursor objeto.

MongoDB\Exception\InvalidArgumentException para erros relacionados à análise de parâmetros ou opções.

MongoDB\Driver\Exception\RuntimeException para outros erros no nível da extensão (por exemplo erros de conexão).

A maioria dos comandos de banco de dados de dados retorna um único documento de resultado , que pode ser obtido convertendo o cursor retornado em uma array e acessando seu primeiro elemento. O exemplo a seguir executa um comando ping e imprime seu documento de resultado:

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

A saída se assemelha a:

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

Alguns comandos do banco de dados retornam um cursor com múltiplos resultados. O exemplo a seguir executa listCollections, que retorna um cursor contendo um documento de resultado para cada collection no banco de dados test . Observe que este exemplo é ilustrativo; os aplicativos geralmente usariam MongoDB\Database::listCollections() na prática.

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

A saída se assemelha a:

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) {
}
}
}
}
}

Voltar

Aggregate()