Visão geral
Esta página contém exemplos de código que mostram como conectar seu aplicação PHP ao MongoDB com várias configurações.
Dica
Para saber mais sobre as opções de conexão nesta página, consulte o link fornecido em cada seção.
Para usar um exemplo de conexão desta página, copie o exemplo de código noaplicação de amostra ou em seu próprio aplicação. Certifique-se de substituir todos os espaços reservados nos exemplos de código, como <hostname>
, pelos valores relevantes para sua implantação do MongoDB .
Aplicativo de amostra
Você pode usar o seguinte aplicativo de exemplo para testar os exemplos de código nesta página. Para usar o aplicativo de amostra, execute as seguintes etapas:
Verifique se a biblioteca PHP do MongoDB está instalada em seu projeto. Para saber mais sobre como instalar a biblioteca PHP do MongoDB , consulte o guia dedownload e instalação .
Copie o seguinte código e cole-o em um novo arquivo
.php
.Copie um exemplo de código desta página e cole-o nas linhas especificadas no arquivo.
1 2 3 require __DIR__ . '/../vendor/autoload.php'; 4 5 // Start example code here 6 7 // End example code here 8 9 try { 10 $client->test->command(['ping' => 1]); 11 echo 'Successfully pinged the MongoDB server.', PHP_EOL; 12 } catch (MongoDB\Driver\Exception\RuntimeException $e) { 13 printf("Failed to ping the MongoDB server: %s\n", $e->getMessage()); 14 }
Importante
Codificação percentual
Você deve codificar por porcentagem um nome de usuário e senha antes de incluí-los em um URI MongoDB . Você pode usar o rawurlencode()
método para codificar esses valores de acordo com a sintaxe do URI especificada em RFC 3986. Não codifique o nome de usuário ou a senha ao passá-los em um parâmetro de array de opções para o construtor MongoDB\Client
.
Conexão
Atlas
O seguinte código mostra como se conectar a uma implantação do MongoDB Atlas :
$uri = '<Atlas connection string>'; $client = new MongoDB\Client($uri);
Para saber mais sobre como se conectar a um sistema do Atlas , consulte Atlas no guia Alvos de conexão.
Sistemas locais
O código a seguir mostra como se conectar a um MongoDB deployment local:
$uri = 'mongodb://localhost:27017/'; $client = new MongoDB\Client($uri);
Observação
Se você não especificar o parâmetro $uri
, o URI de conexão padrão será 'mongodb://127.0.0.1:27017'
.
Para saber mais sobre como se conectar a uma implantação local, consulte Implantações locais no guia Alvos de conexão.
Conjunto de réplicas
O código a seguir mostra como se conectar a um sistema de conjunto de réplicas:
$client = new MongoDB\Client( 'mongodb://<replica set member>:<port>/', ['replicaSet' => '<replica set name>'], );
$uri = 'mongodb://<replica set member>:<port>/?replicaSet=<replica set name>'; $client = new MongoDB\Client($uri);
Dica
Para manter sua conexão com um sistema do conjunto de réplicas quando um host está inativo, você pode fornecer vários membros do conjunto de réplicas no URI de conexão.
Para saber mais sobre como se conectar a um conjunto de réplicas, consulte Conjuntos de réplicas no guia Alvos de conexão.
Stable API
O seguinte código mostra como habilitar a Stable API para a conexão com sua instância do MongoDB :
$driverOptions = ['serverApi' => new MongoDB\Driver\ServerApi('1')]; $client = new MongoDB\Client( 'mongodb://<hostname>:<port>/', [], $driverOptions, );
To learn more about the Stable API, see the Connect with Stable API guide.
Compactação de rede
The following code shows how to specify the Snappy, Zlib, and Zstandard compression algorithms for a connection:
$client = new MongoDB\Client( 'mongodb://<hostname>:<port>', ['compressors' => 'snappy,zstd,zlib'], );
$uri = 'mongodb://<hostname>:<port>/?compressors=snappy,zstd,zlib'; $client = new MongoDB\Client($uri);
To learn more about network compression, see the Compress Network Traffic guide.