Elasticsearch と PHP を使用してドキュメントの管理と取得を行う方法
概要
Elasticsearch は、強力なテキスト検索および分析機能を備えたオープンソースの分散型検索エンジンです。 PHP は、Web 開発に広く使用されている人気のあるサーバー側プログラミング言語です。この記事では、ドキュメントの管理と検索に Elasticsearch と PHP を使用する方法を紹介し、読者の理解と実践に役立つコード例を提供します。
Elasticsearch のインストールと構成
まず、Elasticsearch をインストールして構成する必要があります。 Elasticsearch の公式 Web サイトから最新バージョンをダウンロードし、指示に従ってインストールできます。インストールが完了したら、クラスター名やノード名の設定など、Elasticsearch でいくつかの基本構成を実行する必要があります。具体的な設定方法については、Elasticsearchの公式ドキュメントを参照してください。
PHP クライアントのインストールと構成
次に、Elasticsearch と対話するために PHP クライアントをインストールして構成する必要があります。 Elasticsearch が公式に提供する PHP クライアント - Elasticsearch-PHP (https://www.elastic.co/guide/en/elasticsearch/client/php-api/current/index.html) を使用することをお勧めします。 Composer を使用してクライアントをインストールできます。コマンドは次のとおりです:
composer require elasticsearch/elasticsearch
インストールが完了したら、次のコードを使用して Elasticsearch に接続し、検証します。接続が成功したかどうか:
require 'vendor/autoload.php'; $client = ElasticsearchClientBuilder::create() ->setHosts(['localhost:9200']) ->build(); $params = [ 'index' => 'test_index', 'body' => [ 'query' => [ 'match_all' => new stdClass(), ], ], ]; $response = $client->search($params); print_r($response);
上記のコードでは、最初に Elasticsearch-PHP クライアントを導入し、Elasticsearch クライアント インスタンスを作成しました。次に、このクライアント インスタンスを使用して、単純なクエリ リクエストを送信します。クエリ ステートメントの match_all
はすべてのドキュメントと一致することを示し、test_index
はクエリされるインデックスを示します。最後に、search
メソッドを通じてクエリ リクエストを送信し、クエリ結果を出力します。
インデックスとドキュメントの作成
次に、インデックスとドキュメントの作成方法を学習します。インデックスは、リレーショナル データベースのテーブルと同様に、ドキュメントが保存される場所です。ドキュメントは実際のデータであり、リレーショナル データベースの行と同様です。次のコードを使用して、インデックスと単純なドキュメントを作成できます。
$params = [ 'index' => 'my_index', 'body' => [ 'settings' => [ 'number_of_replicas' => 0, 'number_of_shards' => 1, ], 'mappings' => [ 'properties' => [ 'title' => [ 'type' => 'text', ], 'content' => [ 'type' => 'text', ], ], ], ], ]; $response = $client->indices()->create($params); $params = [ 'index' => 'my_index', 'id' => '1', 'body' => [ 'title' => 'Elasticsearch入门指南', 'content' => '本书详细介绍了如何使用Elasticsearch进行文档管理和检索。', ], ]; $response = $client->index($params);
上記のコードでは、まず indices()->create# を使用して
my_index という名前のインデックスを作成します。 ## メソッド インデックスを作成し、いくつかのインデックス設定と属性 (マッピング) を指定します。次に、
index メソッドを使用してドキュメントを作成し、ドキュメントのタイトルとコンテンツを指定しました。
インデックスとドキュメントを取得したら、Elasticsearch を使用して検索できます。簡単な検索コードの例を次に示します。
$params = [ 'index' => 'my_index', 'body' => [ 'query' => [ 'match' => [ 'title' => '入门指南', ], ], ], ]; $response = $client->search($params); print_r($response);
match クエリを使用して、タイトルに
Getting Started を含むドキュメントを検索しました。クエリ結果を出力すると、Elasticsearch が一致するドキュメント情報を返したことがわかります。
ドキュメントを更新または削除する必要がある場合は、次のコード例を使用できます。
$params = [ 'index' => 'my_index', 'id' => '1', 'body' => [ 'doc' => [ 'title' => 'Elasticsearch入门指南(第二版)', ], ], ]; $response = $client->update($params); $params = [ 'index' => 'my_index', 'id' => '1', ]; $response = $client->delete($params);
を使用します。 update 更新するメソッド ID 1 のドキュメントのタイトル。次に、ID 1 のドキュメントが
delete メソッドを使用して削除されました。
この記事の紹介とコード例を通じて、Elasticsearch と PHP をドキュメントの管理と検索に使用する方法を学びました。まず、Composer を使用して Elasticsearch と Elasticsearch-PHP クライアントをインストールして設定する必要があります。次に、インデックスとドキュメントの作成方法、ドキュメントの検索、更新、削除の方法を学びました。この記事が、読者がドキュメントの管理と検索に Elasticsearch と PHP をよりよく理解し、使用できるようになれば幸いです。
以上がElasticsearch と PHP をドキュメントの管理と検索に活用する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。