Para agentes de IA: um índice de documentação está disponível em https://www.mongodb.com/pt-br/docs/llms.txt — as versões de markdown de todas as páginas estão disponíveis anexando .md a qualquer caminho de URL.

MongoDB\Database::command()

MongoDB\Database::command()

Executar um comando 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.

Novidades na versão 1.3.

typeMap

array

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

Um objeto MongoDB\Driver\Cursor.

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