0 follower

Final Class Yiisoft\Data\Cycle\Reader\FilterHandler\AndXHandler

InheritanceYiisoft\Data\Cycle\Reader\FilterHandler\AndXHandler
ImplementsYiisoft\Data\Cycle\Reader\QueryBuilderFilterHandler

Method Details

Hide inherited methods

getAsWhereArguments() public method

public array getAsWhereArguments ( \Yiisoft\Data\Reader\FilterInterface $filter, array $handlers )
$filter \Yiisoft\Data\Reader\FilterInterface
$handlers array

                #[\Override]
public function getAsWhereArguments(FilterInterface $filter, array $handlers): array
{
    /** @var AndX $filter */
    return [
        static function (QueryBuilder|SelectQuery $select) use ($filter, $handlers) {
            foreach ($filter->filters as $subFilter) {
                $handler = $handlers[$subFilter::class] ?? null;
                if ($handler === null) {
                    throw new NotSupportedFilterException($subFilter::class);
                }
                $select->andWhere(...$handler->getAsWhereArguments($subFilter, $handlers));
            }
        },
    ];
}

            
getFilterClass() public method

public string getFilterClass ( )

                #[\Override]
public function getFilterClass(): string
{
    return AndX::class;
}