ホームページ > バックエンド開発 > PHPチュートリアル > PHP 開発でのドキュメント ストレージとクエリに Google Cloud Firestore を使用する方法

PHP 開発でのドキュメント ストレージとクエリに Google Cloud Firestore を使用する方法

WBOY
リリース: 2023-06-25 08:44:01
オリジナル
869 人が閲覧しました

PHP 開発でドキュメント ストレージとクエリに Google Cloud Firestore を使用する方法

クラウド コンピューティング テクノロジの継続的な開発により、クラウド サービスは最新のアプリケーション開発に必要な部分になりました。 Google Cloud Firestore は、Google が開始したドキュメントベースの NoSQL データベース サービスで、リアルタイム データベース、オフライン データ同期、強力な整合性、自動拡張、グローバル展開などの優れた機能を提供します。この記事では主に、PHP プロジェクトでのドキュメント ストレージとクエリに Google Cloud Firestore を使用する方法を紹介します。

ステップ 1: Google Cloud Firestore プロジェクトを作成する

まず、Google Cloud アカウントにログインし、Google Cloud コンソールで新しいプロジェクトを作成する必要があります。プロジェクトで Firestore タブを開き、新しい Cloud Firestore データベースを作成します。テスト モードまたは運用モードを選択できます。テスト モードでは誰でもデータベースにアクセスできますが、運用モードではアクセスに認証と認可が必要です。このときに生成されたプロジェクト ID を記録します。

ステップ 2: Google Cloud Firestore SDK をインストールする

PHP プロジェクトで Google Cloud Firestore を使用するには、Google Cloud Firestore SDK をインストールする必要があります。ターミナルでコンポーザー コマンドを使用してインストールします。

composer require google/cloud-firestore
ログイン後にコピー

ステップ 3: Google Cloud Firestore SDK を構成する

次のコードを追加して、Google Cloud Firestore SDK を構成します。「 your_project_id 」を変更する必要があります。 」をステップ 1 で生成したプロジェクト ID に置き換えます:

<?php
use GoogleCloudFirestoreFirestoreClient;

$firestore = new FirestoreClient([
    'projectId' => 'your_project_id',
]);
ログイン後にコピー

ステップ 4: ドキュメントを保存する

次に、FirestoreClient オブジェクトを使用してドキュメントを保存し、クエリすることができます。以下は、FirestoreClient オブジェクトを使用して PHP プロジェクトにドキュメントを保存するためのサンプル コードです。

<?php
use GoogleCloudFirestoreFirestoreClient;

$firestore = new FirestoreClient([
    'projectId' => 'your_project_id',
]);

$docRef = $firestore->collection('users')->document('alovelace');
$docRef->set([
    'first' => 'Ada',
    'last' => 'Lovelace',
    'born' => 1815
]);
ログイン後にコピー

上記のコードでは、最初に FirestoreClient オブジェクトを作成し、プロジェクト ID を指定します。次に、ユーザーコレクションが作成され、その中に「alovelace」という名前のドキュメントが作成され、その属性値が設定されます。このうち、「first」は名、「last」は姓、「born」は生年月日を表します。保存が完了すると、Firestore は一意のドキュメント ID を自動的に生成します。

ステップ 5: ドキュメントのクエリ

get() メソッドを使用してドキュメントを検索できます。以下は、PHP プロジェクトで FirestoreClient オブジェクトを使用してドキュメントをクエリするためのサンプル コードです。

<?php
use GoogleCloudFirestoreFirestoreClient;

$firestore = new FirestoreClient([
    'projectId' => 'your_project_id',
]);

$docRef = $firestore->collection('users')->document('alovelace');
$snapshot = $docRef->snapshot();

if ($snapshot->exists()) {
    printf('User %s was born in %d', $snapshot['first'], $snapshot['born']);
} else {
    printf('Document %s does not exist!', $docRef->name());
}
ログイン後にコピー

上記のコードでは、まず「alovelace」という名前のドキュメントを取得し、snapshot() を通じてドキュメントのスナップショットを取得します。方法。文書が存在する場合は「User」の名前と生年月日を出力し、文書が存在しない場合は文書が存在しない旨のプロンプトメッセージを出力します。

ステップ 6: ドキュメントの更新と削除

update() メソッドを使用してドキュメントを更新できます。以下は、PHP プロジェクトで FirestoreClient オブジェクトを使用してドキュメントを更新するサンプル コードです。

<?php
use GoogleCloudFirestoreFirestoreClient;

$firestore = new FirestoreClient([
    'projectId' => 'your_project_id',
]);

$docRef = $firestore->collection('users')->document('alovelace');
$docRef->update([
    ['path' => 'first', 'value' => 'Ada King'],
    ['path' => 'born', 'value' => 1816]
]);
ログイン後にコピー

上記のコードでは、まず「alovelace」という名前のドキュメントを取得し、名前と生年月日を更新します。

delete() メソッドを使用してドキュメントを削除できます。以下は、PHP プロジェクトで FirestoreClient オブジェクトを使用してドキュメントを削除するサンプル コードです。

<?php
use GoogleCloudFirestoreFirestoreClient;

$firestore = new FirestoreClient([
    'projectId' => 'your_project_id',
]);

$docRef = $firestore->collection('users')->document('alovelace');
$docRef->delete();
ログイン後にコピー

上記のコードでは、「alovelace」という名前のドキュメントで delete() メソッドを呼び出してドキュメントを削除しました。

結論

Google Cloud Firestore は、Google が開始したドキュメントベースの NoSQL データベース サービスで、リアルタイム データベース、オフライン データ同期、強整合性、自動拡張などの優れた機能を提供します。グローバル展開です。 PHP プロジェクトで FirestoreClient オブジェクトを使用すると、ドキュメントの保存とクエリをすばやく実行したり、ドキュメントを簡単に更新したり削除したりできます。 Google Cloud Firestore の使い方をマスターすると、PHP 開発者の開発効率を向上させることができます。

以上がPHP 開発でのドキュメント ストレージとクエリに Google Cloud Firestore を使用する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

関連ラベル:
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
最新の問題
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート