keboola / elasticsearch-dsl
Elasticsearch DSL 库
Requires
- php: ^8
- keboola/elasticsearch: ^6
- paragonie/random_compat: *
- symfony/serializer: ^6
Requires (Dev)
- phpstan/phpstan: ^1
- phpunit/phpunit: ^9.5
- rector/rector: ^0.15.2
- squizlabs/php_codesniffer: ^3.7
Suggests
- keboola/elasticsearch: This library is for keboola/elasticsearch client to enhance it with DSL functionality.
This package is auto-updated.
Last update: 2024-09-15 17:24:06 UTC
README
介绍 Elasticsearch DSL 库,为 Elasticsearch Bundle 和 elasticsearch-php 客户端提供目标查询构建器。您可以轻松构建任何 Elasticsearch 查询并将其转换为数组。
如果您需要任何帮助,Stack Overflow 是首选并推荐的询问 ONGR 支持问题的途径。
版本矩阵
文档
该捆绑包的最新在线文档可在此处找到 http://docs.ongr.io/ElasticsearchDSL。如果您需要 2.x 文档,可以在 此处 的 GitHub 分支中找到。
试试看!
安装
使用 composer 安装库
$ composer require ongr/elasticsearch-dsl
elasticsearch-php 客户端在 composer 要求中定义,无需安装。
搜索
Elasticsearch DSL 从 Elasticsearch Bundle 中提取出来,为 elasticsearch-php 提供独立的查询 DSL。有关如何与 Elasticsearch Bundle 一起使用的示例,请参阅 Elasticsearch Bundle 文档。
如果您不想使用 Symfony 或 Elasticsearch Bundle,无需担心,您可以使用它与 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 查询,所有示例都可以在 文档中找到