Elasticsearch 번들 및 elasticsearch-php 클라이언트를 위한 객관적인 쿼리 빌더를 제공하기 위해 Elasticsearch DSL 라이브러리를 소개합니다. Elasticsearch 쿼리를 쉽게 작성하고 이를 배열로 변환할 수 있습니다.
도움이 필요한 경우 스택 오버플로가 ONGR 지원 질문에 선호되고 권장되는 방법입니다.
이 라이브러리가 마음에 드시면 커피 한 잔 사서 개발할 수 있도록 도와주세요.
엘라스틱서치 버전 | ElasticsearchDSL 버전 |
---|---|
>= 7.0 | >= 7.0 |
>= 6.0, < 7.0 | >= 6.0 |
>= 5.0, < 6.0 | >= 5.0 |
>= 2.0, < 5.0 | >= 2.0(지원되지 않음) |
>= 1.0, < 2.0 | 1.x(지원되지 않음) |
<= 0.90.x | 지원되지 않음 |
번들의 온라인 문서는 여기에 있습니다.
작곡가와 함께 라이브러리를 설치하십시오.
$ composer require ongr/elasticsearch-dsl
elasticsearch-php 클라이언트는 작성기 요구사항에 정의되어 있으므로 설치할 필요가 없습니다.
Elasticsearch DSL은 Elasticsearch-php에 대한 독립형 쿼리 dsl을 제공하기 위해 Elasticsearch Bundle에서 추출되었습니다. Elasticsearch Bundle과 함께 사용하는 방법의 예는 Elasticsearch Bundle 문서에서 찾을 수 있습니다.
Symfony 또는 Elasticsearch 번들을 사용하고 싶지 않더라도 걱정하지 마세요. elasticsearch-php와 함께 모든 프로젝트에서 사용할 수 있습니다. 예는 다음과 같습니다.
Symfony를 사용하는 경우 Elasticsearch DSL과의 완전한 통합을 제공하는 ElasticsearchBundle도 있습니다.
라이브러리는 독립형이며 어떤 프레임워크와도 결합되지 않습니다. 모든 PHP 프로젝트에서 사용할 수 있으며 유일한 요구 사항은 작곡가입니다. 예는 다음과 같습니다.
검색 만들기:
<?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은 모든 Elasticsearch 쿼리를 다루며, 모든 예는 문서에서 찾을 수 있습니다.