接続ターゲットの選択
Overview
このガイドでは、接続string と {0MongoDB\Client
オブジェクトを使用して、さまざまなタイプのMongoDB 配置に接続する方法を説明します。
Atlas
MongoDBAtlas上の 配置に接続するには、 接続string に次の要素を含めます。
Atlas クラスターの URI
データベースユーザー名
データベースユーザーのパスワード
次に、接続stringを MongoDB\Client
コンストラクターに渡します。
Atlas に接続するときは、Atlas が MongoDB Server の新しいバージョンにアップグレードするときに重大な変更を回避するために、 Stable API クライアント オプションを使用することをお勧めします。 Stable API 機能について詳しくは、 Stable API ページ をご覧ください。
次のコードは、 PHPライブラリを使用して Atlas クラスターに接続する方法を示しています。 このコードでは、Stable APIバージョンを指定するためにserverApi
オプションも使用されます。
// Replace the placeholder with your Atlas connection string $uri = '<connection string>'; // Create a MongoDB client with server API options $client = new MongoDB\Client($uri, [], [ 'serverApi' => new MongoDB\Driver\ServerApi('1') ]); // Ping the server to verify that the connection works $admin = $client->admin; $command = new MongoDB\Driver\Command(['ping' => 1]); $result = $admin->command($command)->toArray(); echo json_encode($result), PHP_EOL; echo 'Pinged your deployment. You successfully connected to MongoDB!\n';
Tip
クイック スタートの 接続stringの作成 の手順に従って、 接続文字stringを取得します。
ローカル配置
MongoDB のローカル配置に接続するには、ホスト名としてlocalhost
を使用します。 デフォルトでは、 mongod
プロセスはポート27017で実行されますが、これは配置に合わせてカスタマイズできます。
次のコードは、 PHPライブラリを使用してローカルMongoDBデプロイに接続する方法を示しています。
$client = new MongoDB\Client("mongodb://localhost:27017");
レプリカセット
レプリカセットに接続するには、IP 接続 でレプリカセットのホスト名(またはstring アドレス)とポート番号を指定します。
レプリカセットレプリカセットの 1 つ以上のホストを指定し、 PHPライブラリに自動検出を実行して他のホストを検索するように指示できます。 ドライバーに自動検出を実行するように指示するには、次のいずれかのアクションを選択します。
replicaSet
パラメーターの値としてレプリカセットの名前を指定します。directConnection
パラメーターの値としてfalse
を指定します。レプリカセットに複数のホストを指定します。
次の例では、ドライバーはサンプル接続 URI を使用して、host1
を含む 3 つの異なるホストのポート 27017
で実行されている MongoDB レプリカセット sampleRS
に接続します。
$uri = 'mongodb://host1:27017/?replicaSet=sampleRS'; // Create a MongoDB client $client = new MongoDB\Client($uri);
初期化
レプリカセットを初期化するには、単一のノードに直接接続する必要があります。 そのためには、 接続stringで directConnection
接続オプションを true
に設定します。 次のコード例は、この接続オプションを設定する方法を示しています。
// Replace the placeholders with your actual hostname and port $uri = 'mongodb://<hostname>:<port>/?directConnection=true'; // Create a MongoDB client $client = new MongoDB\Client($uri);
API ドキュメント
MongoDB\Client
クラスの使用の詳細については、次のAPIドキュメントを参照してください。