imreish/elasticsearch-dsl

Elasticsearch DSL library

dev-master / 8.0.x-dev 2024-02-08 16:23 UTC

This package is auto-updated.

Last update: 2024-04-08 16:37:16 UTC


README

codecov Latest Stable Version Total Downloads Latest Unstable Version License PHP Version Require

Fork of ongr-io/ElasticsearchDSL library with updated PHP and Elasticsearch version.

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

Version matrix

Elasticsearch version ElasticsearchDSL version
>= 8.0 >= 8.0

Documentation

The online documentation of the bundle is here

Try it!

Installation

Install library with composer:

$ composer require imreish/elasticsearch-dsl

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

Search

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:

Create search:

 <?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