Elastica\Aggregation\Filter::toArray PHP Method

toArray() public method

public toArray ( ) : array
return array
    public function toArray()
    {
        if (!$this->hasParam('filter')) {
            throw new InvalidException('Filter is required');
        }
        $array = ['filter' => $this->getParam('filter')->toArray()];
        if ($this->_aggs) {
            $array['aggs'] = $this->_convertArrayable($this->_aggs);
        }
        return $array;
    }

Usage Example

 public function testToArray()
 {
     $expected = array("filter" => array("range" => array("stock" => array("gt" => 0))), "aggs" => array("avg_price" => array("avg" => array("field" => "price"))));
     $agg = new Filter("in_stock_products");
     $agg->setFilter(new Range("stock", array("gt" => 0)));
     $avg = new Avg("avg_price");
     $avg->setField("price");
     $agg->addAggregation($avg);
     $this->assertEquals($expected, $agg->toArray());
 }
All Usage Examples Of Elastica\Aggregation\Filter::toArray