MongoDB\ClientBulkWrite::replaceOne()
Novidades na versão 2.1.
Definição
MongoDB\ClientBulkWrite::replaceOne()
Specify a replace operation in the bulk write command for the first matching document. This method returns the
MongoDB\ClientBulkWrite
instance on which it's called.function replaceOne( array|object $filter, array|object $replacement, array $options = [] ): self
Parâmetros
$filter
: array|object- Os critérios de filtro que especificam os documentos a serem substituídos.
$replacement
: array|object- O documento de substituição.
$options
: arrayUma array especificando as opções desejadas.
NomeTipoDescriçãoagrupamento
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.Se o agrupamento não for especificado, mas a coleção tiver um agrupamento padrão, a operação usará o agrupamento especificado para a coleção. Se nenhum agrupamento for especificado para a coleção nem para a operação, o MongoDB usará a comparação binária simples usada nas versões anteriores para comparações de strings.
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.
sort
array|object
A especificação de classificação para a ordem dos documentos correspondentes. Defina esta opção para aplicar um pedido aos documentos correspondentes antes que o servidor execute a operação de substituição.
upsert
booleano
Se definido como
true
, é criado um novo documento quando nenhum documento corresponde aos critérios da consulta. O valor padrão éfalse
, que não insere um novo documento quando nenhuma correspondência é encontrada.
Erros/exceções
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\BulkWriteCommandException para erros relacionados à operação de gravação. Você pode inspecionar o valor retornado por getWriteErrors() para determinar a natureza do erro.
MongoDB\Driver\Exception\RuntimeException para outros erros no nível da extensão (por exemplo erros de conexão).
Comportamento
Ao avaliar critérios de query, oMongoDB compara tipos e valores de acordo com suas próprias regras de comparação para BSON types, o que difere da comparação do e digite PHP malabarismo regras. Ao corresponder a um tipo BSON especial, os critérios de query devem usar a respectiva classe BSON na extensão (por exemplo use MongoDB\BSON\ObjectId para corresponder a um ObjectId).
Se uma MongoDB\Driver\Exception\BulkWriteCommandException for lançada, você poderá chamar getWriteErrors() e inspecionar as informações na array retornada para determinar a natureza do erro.
Por exemplo, uma operação de gravação pode ter sido aplicada com êxito ao servidor primário , mas não atendeu ao preocupação de gravação. Como alternativa, uma operação de gravação pode ter falhado completamente, por exemplo , por violar a restrição de chave exclusiva.