Présentation de la bibliothèque Elasticsearch DSL pour fournir un générateur de requêtes objectifs pour le bundle Elasticsearch et le client elasticsearch-php. Vous pouvez facilement créer n'importe quelle requête Elasticsearch et la transformer en tableau.
Si vous avez besoin d'aide, le débordement de pile est le moyen préféré et recommandé de poser des questions d'assistance à ONGR.
Si vous aimez cette bibliothèque, aidez-moi à la développer en achetant une tasse de café
Version ElasticSearch | Version ElasticsearchDSL |
---|---|
>= 7,0 | >= 7,0 |
>= 6,0, < 7,0 | >= 6,0 |
>= 5,0, < 6,0 | >= 5,0 |
>= 2,0, < 5,0 | >= 2.0 (non pris en charge) |
>= 1,0, < 2,0 | 1.x (non pris en charge) |
<= 0,90.x | non pris en charge |
La documentation en ligne du bundle est ici
Installer la bibliothèque avec composer :
$ composer require ongr/elasticsearch-dsl
Le client elasticsearch-php est défini dans les exigences du compositeur, pas besoin de l'installer.
Elasticsearch DSL a été extrait d'Elasticsearch Bundle pour fournir un DSL de requête autonome pour elasticsearch-php. Des exemples d'utilisation avec Elasticsearch Bundle peuvent être trouvés dans la documentation d'Elasticsearch Bundle.
Si vous ne souhaitez pas utiliser le bundle Symfony ou Elasticsearch, ne vous inquiétez pas, vous pouvez l'utiliser dans n'importe quel projet avec elasticsearch-php. Voici l'exemple :
Si vous utilisez Symfony, il existe également ElasticsearchBundle qui offre une intégration complète avec Elasticsearch DSL.
La bibliothèque est autonome et n’est couplée à aucun framework. Vous pouvez l'utiliser dans n'importe quel projet PHP, la seule condition requise est composer. Voici l'exemple :
Créer une recherche :
<?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 couvre toutes les requêtes elasticsearch, tous les exemples peuvent être trouvés dans la documentation