ElasticsearchDSL
v7.2.2
引入 Elasticsearch DSL 库,为 Elasticsearch 捆绑包和 elasticsearch-php 客户端提供客观查询构建器。您可以轻松构建任何 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客户端在composer需求中定义,无需安装。
Elasticsearch DSL 是从 Elasticsearch Bundle 中提取出来的,为 elasticsearch-php 提供独立的查询 dsl。如何将其与 Elasticsearch Bundle 一起使用的示例可以在 Elasticsearch Bundle 文档中找到。
如果您不想使用 Symfony 或 Elasticsearch 捆绑包,不用担心,您可以在任何项目中与 elasticsearch-php 一起使用它。这是例子:
如果您使用 Symfony,还有 ElasticsearchBundle,它提供与 Elasticsearch DSL 的完全集成。
该库是独立的,不与任何框架耦合。您可以在任何 PHP 项目中使用它,唯一的要求是 Composer。这是例子:
创建搜索:
<?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 查询,所有示例都可以在文档中找到