ongr/elasticsearch-dsl
Object-oriented Elasticsearch query builder for PHP. Build searches, filters, aggregations and more with a DSL, then export to arrays for elasticsearch-php or ONGR ElasticsearchBundle. Supports Elasticsearch 5/6/7 via versioned releases.
More info about date range aggregation is in the official elasticsearch docs
A range aggregation that is dedicated for date values.
{
"aggregations": {
"range": {
"date_range": {
"field": "date",
"format": "MM-yyy",
"ranges": [
{ "to": "now-10M/M" },
{ "from": "now-10M/M" }
]
}
}
}
}
And now the query via DSL:
$dateRangeAggregation = new DateRangeAggregation('range');
$dateRangeAggregation->setField('date');
$dateRangeAggregation->setFormat('MM-yyy');
$dateRangeAggregation->addRange(null, 'now-10M/M');
$dateRangeAggregation->addRange('now-10M/M', null);
$search = new Search();
$search->addAggregation($dateRangeAggregation);
$queryArray = $search->toArray();
Or :
$dateRangeAggregation = new DateRangeAggregation(
'range',
'date',
'MM-yyy',
[
['to' => 'now-10M/M'],
['from' => 'now-10M/M'],
]
);
$search = new Search();
$search->addAggregation($dateRangeAggregation);
$queryArray = $search->toArray();
How can I help you explore Laravel packages today?