Menu Docs

Página inicial do DocsManual da Biblioteca PHP

MongoDB\Collection::createSearchIndexes()

Nesta página

  • Definição
  • Parâmetros
  • Valores de retorno
  • Erros/exceções
  • Comportamento
  • Exemplos
  • Veja também

Novidade na versão 1.17.

MongoDB\Collection::createSearchIndexes()

Crie um ou mais índice de pesquisa do Atlas Search para a collection.

function createSearchIndexes(
array $indexes,
array $options = []
): string

Este comando só pode ser executado em um sistema hospedado no MongoDB Atlas e requer uma camada do cluster Atlas de pelo menos M10. Um sistema local do Atlas também pode ser usado para desenvolvimento.

$indexes : array

Array de documentos que descrevem os índices a serem criados.

Um campo de documento definition obrigatório descreve o índice a ser criado. Para obter detalhes sobre a sintaxe de definição, consulte Sintaxe de definição do índice de pesquisa.

Um campo de string opcional name especifica o nome do índice de pesquisa para criar. Você não pode criar vários índices com o mesmo nome em uma única collection. Se você não especificar um nome, o índice será chamado de "padrão".

$options : array

Um array especificando as opções desejadas.

Nome
Tipo
Descrição
comentário
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.

Os nomes dos índice de pesquisa do Atlas Search criados como um array de strings.

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 do driver (por exemplo, erros de conexão).

Os índices do Atlas Search são gerenciados de forma assíncrona. Após criar ou atualizar um índice, você pode executar periodicamente o MongoDB\Collection::listSearchIndexes() e verificar o campo de saída do queryable para determinar se ele está pronto para ser utilizado.

O exemplo seguinte cria um índice do Atlas Search utilizando mapeamentos dinâmicos para indexar todos os campos de documento que contêm tipos de dados suportados.

<?php
$collection = (new MongoDB\Client)->selectCollection('test', 'articles');
$indexNames = $collection->createSearchIndexes(
[
[
'name' => 'test-search-index',
'definition' => ['mappings' => ['dynamic' => true]],
],
]
);
var_dump($indexNames);

A saída seria então semelhante a:

array(1) {
[0]=>
string(17) "test-search-index"
}
← MongoDB\Collection::createSearchIndex()