ホームページ > バックエンド開発 > PHPチュートリアル > PHP はオープンソース Elasticsearch SDK を実装します

PHP はオープンソース Elasticsearch SDK を実装します

PHPz
リリース: 2023-06-18 09:24:01
オリジナル
1383 人が閲覧しました

Elasticsearch は、オープンソースのテキスト検索および分析エンジンの構築に使用できる Lucene ベースの検索エンジンです。ペタバイト単位のデータを分散方式で迅速に検索、保存、分析できる分散型全文検索エンジンを提供します。 PHP 言語は Web 開発に広く使用されており、PHP アプリケーションがテキストの検索と分析を実行するのは非常に一般的です。この記事では、PHP を使用してオープンソース Elasticsearch SDK を実装する方法について説明します。

  1. PHP Elasticsearch Library

PHP Elasticsearch Library は、PHP で書かれたオープン ソース ライブラリで、Elasticsearch に簡単にアクセスして操作できる PHP クライアントを提供します。このライブラリには、Elasticsearch サーバーへの接続、ドキュメントのインデックス作成、ドキュメントの検索、集計クエリの実行など、幅広い機能があります。さらに、PHP Elasticsearch ライブラリは、ユーザーが検索の重み付け、フィルター、TTL、その他のパラメーターを簡単に設定できるようにしたり、Elasticsearch のほぼリアルタイムの検索インデックス作成をサポートしたりするなど、多くの便利なツールも提供します。

  1. PHP Elasticsearch ライブラリのインストール

PHP Elasticsearch ライブラリのインストールは非常に簡単で、Composer を使用してインストールするだけです。 Composer を使用して PHP Elasticsearch ライブラリをインストールする簡単な手順は次のとおりです。

まず、プロジェクト ディレクトリにcomposer.json ファイルを作成し、次のコンテンツを追加します。

{

"require": {
    "elasticsearch/elasticsearch": "6.6.0"
}
ログイン後にコピー

}

次に、次のコマンドを実行して PHP Elasticsearch ライブラリをインストールします。

composer install

  1. Elasticsearch に接続
#次に、PHP Elasticsearch ライブラリを使用して Elasticsearch に接続する方法を学びます。 PHP を使用した Elasticsearch サーバーへの接続は非常に簡単で、Elasticsearch クライアント オブジェクトを使用するだけです。以下は Elasticsearch に接続するための簡単なコードです:

require_once 'vendor/autoload.php';

//Elasticsearch サーバーに接続

$ client = ElasticsearchClientBuilder::create()->build();

?>

この例では、Elasticsearch PHP クライアントを使用して Elasticsearch サーバーに接続します。

    ドキュメントのインデックス作成
次に、PHP Elasticsearch ライブラリを使用して Elasticsearch のドキュメントにインデックスを作成する方法を学びます。ドキュメントにインデックスを付けるには、次の情報が必要です。

    インデックス名: ドキュメントが保存されるインデックスの名前。
  • ドキュメント タイプ: ドキュメント タイプは、インデックスに保存されるドキュメントのタイプを指定するために使用されます。
  • ID: ドキュメントの一意の識別子。
  • インデックス データ: ドキュメントのテキスト。
以下は、Elasticsearch の一部のドキュメントのインデックスを作成するためのサンプル コードです:

require_once 'vendor/autoload.php';

//Elasticsearch サーバーに接続します

$client = ElasticsearchClientBuilder::create()->build();

//インデックス名、タイプ、ID を定義します

$index = 'my_index';
$type = 'my_type';
$id = '1';
$params = [

'index' => $index,
'type' => $type,
'id' => $id,
'body' => ['title' => 'My first blog post', 'content' => 'This is the content of my first blog post.']
ログイン後にコピー

];

//変換Elasticsearch へのドキュメントのインデックス

$response = $client->index($params);

?>

上記のコードでは、最初にインデックス名を定義します。と ID 。次に、ドキュメントの本文を定義し、Elasticsearch クライアントを使用してドキュメントを Elasticsearch サーバーにインデックス付けしました。

    ドキュメントの検索
PHP Elasticsearch ライブラリを使用したドキュメントの検索も非常に簡単です。ドキュメントを検索するには、次の情報を提供する必要があります。

    インデックス名: ドキュメントが保存されているインデックスの名前。
  • Query: 検索するテキストを指定するクエリ文字列。
  • ページング: 返される結果ページの数を指定します。
  • 返される結果の数: 返される結果ドキュメントの数を指定します。
以下は、Elasticsearch からドキュメントを検索するためのサンプル コードです:

require_once 'vendor/autoload.php';

//Elasticsearch サーバーに接続します

$client = ElasticsearchClientBuilder::create()->build();

//インデックス名とクエリを定義します

$index = 'my_index ' ;
$query = 'content: "最初のブログ投稿"';

//検索操作を実行

$params = [

'index' => $index,
'body' => [
    'query' => [
        'query_string' => [
            'query' => $query
        ]
    ]
]
ログイン後にコピー
];

$response = $client->search($params);

?>

上記のコードでは、最初にインデックス名とクエリ文字列を定義します。次に、検索操作を実行するときに、この情報を Elasticsearch クライアントに渡します。最後に、クエリ条件に一致するすべてのドキュメントを Elasticsearch サーバーから取得します。

    概要
この記事では、PHP Elasticsearch ライブラリを使用してオープンソース Elasticsearch SDK を実装する方法を紹介しました。 Elasticsearch サーバーへの接続、ドキュメントのインデックス作成、ドキュメントの検索などの方法を学びました。 PHP Elasticsearch ライブラリには、Elasticsearch に簡単にアクセスして操作できる幅広い機能が備わっています。テキストの検索と分析に関連するアプリケーションに取り組んでいる場合、PHP Elasticsearch ライブラリは非常に良い選択です。

以上がPHP はオープンソース Elasticsearch SDK を実装しますの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

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