Elasticsearch バンドルと elasticsearch-php クライアントに目的のクエリ ビルダーを提供する Elasticsearch DSL ライブラリの導入。 Elasticsearch クエリを簡単に構築し、配列に変換できます。
サポートが必要な場合は、スタック オーバーフローを使用して ONGR サポートに質問することをお勧めします。
このライブラリが気に入ったら、コーヒーを買って開発に協力してください
Elasticsearchのバージョン | ElasticsearchDSLバージョン |
---|---|
>= 7.0 | >= 7.0 |
>= 6.0、< 7.0 | >= 6.0 |
>= 5.0、< 6.0 | >= 5.0 |
>= 2.0、< 5.0 | >= 2.0 (サポートされていません) |
>= 1.0、< 2.0 | 1.x (サポートされていません) |
<= 0.90.x | サポートされていません |
バンドルのオンラインドキュメントはこちらです
Composer を使用してライブラリをインストールします。
$ composer require ongr/elasticsearch-dsl
elasticsearch-php クライアントはコンポーザーの要件で定義されているため、インストールする必要はありません。
Elasticsearch DSL は Elasticsearch Bundle から抽出され、elasticsearch-php のスタンドアロン クエリ DSL を提供します。 Elasticsearch Bundle と組み合わせて使用する方法の例は、Elasticsearch Bundle のドキュメントにあります。
Symfony または Elasticsearch バンドルを使用したくない場合でも、心配する必要はありません。どのプロジェクトでも elasticsearch-php と一緒に使用できます。以下に例を示します。
Symfony を使用している場合は、Elasticsearch DSL との完全な統合を提供する ElasticsearchBundle もあります。
ライブラリはスタンドアロンであり、どのフレームワークとも結合されていません。任意の PHP プロジェクトで使用できます。唯一の要件はコンポーザーです。以下に例を示します。
検索を作成します:
<?php
require ' vendor/autoload.php ' ; //Composer autoload
$ client = ClientBuilder:: create ()-> build (); //elasticsearch-php client
$ matchAll = new ONGR ElasticsearchDSL Query MatchAllQuery ();
$ search = new ONGR ElasticsearchDSL Search ();
$ search -> addQuery ( $ matchAll );
$ params = [
' index ' => ' your_index ' ,
' body ' => $ search -> toArray (),
];
$ results = $ client -> search ( $ params );
Elasticsearch DSL はあらゆる elasticsearch クエリをカバーしており、すべての例はドキュメントに記載されています。