ElasticaFriendlyResultSet
Thin but powerful wrapper for ruflin/Elastica.
Installation
Simply add this library to your project as a dependency:
composer require kissge/elastica-friendly-result-set
Usage
Example 1.
use Kissge\ElasticaFriendlyResultSet\Aggregations;
$index = $container->get('fos_elastica.index.<index name>'); // Symfony assumed, but that's not necessary
$aggs = new Aggregations($index->search($query)->getAggregations());
foreach ($aggs-><aggregation name> as $key => $bucket) {
do_something($bucket-><subaggregation name>);
do_something($bucket-><subaggregation name>-><term name>);
}
Example 2.
use Kissge\ElasticaFriendlyResultSet\Aggregations;
$aggs = new Aggregations($index->search($query)->getAggregations());
$this->render($view, ['aggs' => $aggs]);
{% for key, interval in aggs.interval %}
<tr>
<th>
{{ key }}
</th>
<td>
{{ interval.visitors.female }}
</td>
<td>
{{ interval.visitors.male }}
</td>
<td>
{{ interval.averageScore }}
</td>
</tr>
{% endfor %}
Author
License
This library is licensed under the MIT License. See LICENSE
for the complete license.