2017 © Pedro Peláez
 

library elasticsearch-dsl

Elasticsearch DSL library

image

ongr/elasticsearch-dsl

Elasticsearch DSL library

  • Monday, June 4, 2018
  • by saimaz
  • Repository
  • 28 Watchers
  • 181 Stars
  • 616,103 Installations
  • PHP
  • 36 Dependents
  • 0 Suggesters
  • 62 Forks
  • 24 Open issues
  • 31 Versions
  • 15 % Grown

The README.md

ElasticsearchDSL

Introducing Elasticsearch DSL library to provide objective query builder for Elasticsearch bundle and elasticsearch-php client. You can easily build any Elasticsearch query and transform it to an array., (*1)

If you need any help, stack overflow is the preferred and recommended way to ask ONGR support questions., (*2)

Build Status codecov Latest Stable Version Total Downloads Scrutinizer Code Quality, (*3)

If you like this library, help me to develop it by buying a cup of coffee, (*4)

Buy Me A Coffee, (*5)

Version matrix

Elasticsearch version ElasticsearchDSL version
>= 7.0 >= 7.0
>= 6.0, < 7.0 >= 6.0
>= 5.0, < 6.0 >= 5.0
>= 2.0, < 5.0 >= 2.0 (not supported)
>= 1.0, < 2.0 1.x (not supported)
<= 0.90.x not supported

Documentation

The online documentation of the bundle is here, (*6)

Try it!

Installation

Install library with composer:, (*7)

$ composer require ongr/elasticsearch-dsl

elasticsearch-php client is defined in the composer requirements, no need to install it., (*8)

Elasticsearch DSL was extracted from Elasticsearch Bundle to provide standalone query dsl for elasticsearch-php. Examples how to use it together with Elasticsearch Bundle can be found in the Elasticsearch Bundle docs., (*9)

If you dont want to use Symfony or Elasticsearch bundle, no worries, you can use it in any project together with elasticsearch-php. Here's the example:, (*10)

If you are using Symfony there is also the ElasticsearchBundle which provides full integration with Elasticsearch DSL., (*11)

The library is standalone and is not coupled with any framework. You can use it in any PHP project, the only requirement is composer. Here's the example:, (*12)

Create search:, (*13)

 <?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 covers every elasticsearch query, all examples can be found in the documentation, (*14)

The Versions

22/09 2016
16/09 2016
07/09 2016
11/07 2016
17/04 2016