2017 © Pedro Peláez
 

yii2-extension yii2-elasticsearch

Yii2 elasticsearch client

image

mirocow/yii2-elasticsearch

Yii2 elasticsearch client

  • PHP
  • 0 Dependents
  • 0 Suggesters
  • 2 Forks
  • 1 Open issues
  • 1 Versions
  • 0 % Grown

The README.md

Elasticsearch client for Yii2 framework based on official Elasticsearch PHP library

www.elasticsearch.com, (*1)

Latest Stable Version Latest Unstable Version Total Downloads License Join the chat at https://gitter.im/Mirocow/yii2-elasticsearch FOSSA Status Maintainability, (*2)

Docs are available in english and russian. Based on https://github.com/elastic/elasticsearch, (*3)

Honey modules

Install

$ composer require --prefer-dist mirocow/yii2-elasticsearch

Elasticsearch 5.6.x

$ wget -qO - https://artifacts.elastic.co/GPG-KEY-elasticsearch | sudo apt-key add -
$ sudo apt-get install apt-transport-https
$ echo "deb https://artifacts.elastic.co/packages/5.x/apt stable main" | sudo tee -a /etc/apt/sources.list.d/elastic-5.x.list
$ sudo apt-get update && sudo apt-get install elasticsearch
$ composer require --prefer-dist mirocow/yii2-elasticsearch

Configure

  • Create a class that implements the common\modules\elasticsearch\contracts\Index interface.
  • Add it to the module configuration in common/config/main.php
  • Start indexing
return [
    'modules' => [

        // elasticsearch
        common\modules\elasticsearch\Module::MODULE_NAME => [
          'class' => common\modules\elasticsearch\Module::class,
          'indexes' => [
            common\repositories\indexes\ProductsSearchIndex::class
          ]
        ],

    ],
    'bootstrap' => [
        mirocow\elasticsearch\Bootstrap::class,
    ]
];

Create index

Create empty index, (*4)

$ php yii elasticsearch/index/create index_name

Fill index with all documents, (*5)

$ php yii elasticsearch/index/populate index_name

Destroy an index and all its data, (*6)

$ php yii elasticsearch/index/destroy index_name

Remove all existing indexes, re-create all indexes and re-index all documents for all indexes, (*7)

$ php yii elasticsearch/index/rebuild

Debug

$ export PHP_IDE_CONFIG="serverName=www.site.loc" && export XDEBUG_CONFIG="remote_host=192.168.1.6 idekey=xdebug" && php7.0 ./yii elasticsearch/index/create products_search

Query

<?php
        /** @var QueryBuilder $query */
        $query = new QueryBuilder;
        $query = $query
            ->add(QueryHelper::bool($filter, $must, $should, $must_not))
            ->aggregations($aggregations)
            ->withSource('attributes');

License

FOSSA Status, (*8)

I use JetBrains products to develop yii2-elasticsearch !

www.jetbrains.com, (*9)

The Versions

20/07 2018

dev-master

9999999-dev

Yii2 elasticsearch client

  Sources   Download

GPL-v3

The Requires