Memperkenalkan pustaka DSL Elasticsearch untuk menyediakan pembuat kueri objektif untuk bundel Elasticsearch dan klien elasticsearch-php. Anda dapat dengan mudah membuat kueri Elasticsearch apa pun dan mengubahnya menjadi array.
Jika Anda memerlukan bantuan, stack overflow adalah cara yang disukai dan direkomendasikan untuk mengajukan pertanyaan dukungan ONGR.
Jika Anda menyukai perpustakaan ini, bantu saya mengembangkannya dengan membeli secangkir kopi
Versi pencarian elastis | Versi ElasticsearchDSL |
---|---|
>= 7.0 | >= 7.0 |
>= 6,0, <7,0 | >= 6.0 |
>= 5.0, <6.0 | >= 5.0 |
>= 2.0, <5.0 | >= 2.0 (tidak didukung) |
>= 1,0, <2,0 | 1.x (tidak didukung) |
<= 0,90.x | tidak didukung |
Dokumentasi online bundel tersebut ada di sini
Instal perpustakaan dengan komposer:
$ composer require ongr/elasticsearch-dsl
Klien elasticsearch-php ditentukan dalam persyaratan komposer, tidak perlu menginstalnya.
Elasticsearch DSL diekstraksi dari Elasticsearch Bundle untuk menyediakan dsl kueri mandiri untuk elasticsearch-php. Contoh cara menggunakannya bersama dengan Elasticsearch Bundle dapat ditemukan di dokumen Elasticsearch Bundle.
Jika Anda tidak ingin menggunakan bundel Symfony atau Elasticsearch, jangan khawatir, Anda dapat menggunakannya di proyek apa pun bersama dengan elasticsearch-php. Berikut contohnya:
Jika Anda menggunakan Symfony, ada juga ElasticsearchBundle yang menyediakan integrasi penuh dengan Elasticsearch DSL.
Perpustakaan ini berdiri sendiri dan tidak digabungkan dengan kerangka apa pun. Anda dapat menggunakannya di proyek PHP apa pun, satu-satunya persyaratan adalah komposer. Berikut contohnya:
Buat pencarian:
<?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 mencakup setiap kueri elasticsearch, semua contoh dapat ditemukan di dokumentasi