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

MongoDB\Database::aggregate()

Nesta página

  • Definição
  • Parâmetros
  • Return Values
  • Erros/exceções
  • Exemplos
  • Veja também

Novidade na versão 1.5.

MongoDB\Database::aggregate()

Executa umpipeline de administração/diagnóstico especificado que não requer uma collection subjacente. Para agregações de dados de collection, consulte MongoDB\Collection::aggregate().

function aggregate(
array $pipeline,
array $options = []
): Traversable
$pipeline : array
Especifica uma operação de pipeline de agregação.
$options : array

Uma array especificando as opções desejadas.

Nome
Tipo
Descrição
allowDiskUse
booleano
Permite escrever em arquivos temporários. Ao definir como true, os estágios de aggregation podem escrever dados no subdiretório _tmp do diretório dbPath.
batchSize
inteiro

Especifica o tamanho do lote para o cursor, que se aplicará ao comando aggregate inicial e quaisquer comandos getMore subsequentes. Isso determina o número máximo de documentos para retornar em cada resposta do servidor.

Um batchSize de 0 é especial para isso e só se aplica ao comando aggregate inicial; os comandos getMore subsequentes usam o tamanho de lote padrão do servidor. Isso pode ser útil para retornar rapidamente um cursor ou uma falha do aggregate sem fazer um trabalho significativo do lado do servidor.

bypassDocumentValidation
booleano

Se true, permite que a operação de gravação contorne a validação do nível do documento. O padrão é false.

Isso só se aplica ao usar os estágios $out e $out.

Codec
MongoDB\Codec\DocumentCodec

O codec a ser usado para codificação ou decodificação de documentos. Esta opção é mutuamente exclusiva com a opção typeMap.

Novidade na versão 1.17.

agrupamento
array|object

A colocação permite que os usuários especifiquem regras específicas do idioma para comparação de string , como regras para letras maiúsculas e marcas de acento. Ao especificar agrupamento, o campo locale é obrigatório; todos os outros campos de agrupamento são opcionais. Para obter descrições dos campos, consulte Documento de agrupamento.

comment
misto

Permite ao usuário especificar um comentário arbitrário para ajudar a rastrear a operação por meio do profiler de banco de dados, da saída currentOp e dos registros.

O comentário pode ser qualquer tipo de BSON válido para as versões 4.4 e superiores do servidor. As versões anteriores do servidor suportam apenas valores de string.

explicar
booleano
Especifica se deseja ou não retornar as informações sobre o processamento do pipeline.
dica
string|array|objeto

O índice a ser utilizado. Especifique o nome do índice como uma string ou o padrão da chave do índice como um documento. Se especificado, o sistema de query considerará apenas os planos usando o índice sugerido.

let
array|object

Mapa de nomes e valores de parâmetros. Os valores devem ser expressões constantes ou fechadas que não façam referência aos campos do documento. Os parâmetros podem ser acessados como variáveis em um contexto de expressão agregada (como $$var).

Isto não é suportado para versões de servidor anteriores à 5.0 e resultará em uma exceção no tempo de execução se utilizado.

Novidades na versão 1.9.

maxTimeMS
inteiro

O limite de tempo cumulativo em milésimos de segundo para operações de processamento no cursor. O MongoDB aborta a operação o mais cedo possível após o ponto de interrupção.

readConcern

Preocupação de leitura a ser usada para a operação. O padrão é a preocupação de leitura do banco de dados.

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.

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.

writeConcern

Write concern a ser usada para a operação. O padrão é a preocupação de gravação do banco de dados.

Um MongoDB\Driver\Cursor ou ArrayIterator evento. Em ambos os casos, o valor de retorno será Traversable.

MongoDB\Exception\UnexpectedValueException se a resposta do comando do servidor estiver malformada.

MongoDB\Exception\UnsupportedException se as opções forem usadas e não aceitas pelo servidor selecionado (p. ex., collation, readConcern, writeConcern).

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).

O exemplo de agregação a seguir lista todos os comandos em execução usando o estágio do pipeline de agregação $currentOp e, em seguida, filtra essa lista para mostrar apenas as operações de comando em execução.

<?php
$database = (new MongoDB\Client)->admin;
$cursor = $database->aggregate(
[
['$currentOp' => []],
['$match' => ['op' => 'command']],
]
);

Voltar

__get ()