Skip to content
Snippets Groups Projects
In.php 563 B
Newer Older
<?php

declare(strict_types=1);

namespace IQDEV\Packages\DoctrineHttpFilter\Filter;

use Doctrine\ORM\QueryBuilder;
use IQDEV\Packages\DoctrineHttpFilter\HttpFilter;

final class In extends HttpFilter
{
    public function addToQuery(QueryBuilder $queryBuilder): QueryBuilder
    {
        $values = array_map(fn($value) => '\'' . $value . '\'', $this->getHttpValue());
        $stringValues = implode(',', $values);

        $queryBuilder->where(
            $this->getColumn() . ' IN (' . $stringValues . ')',
        );

        return $queryBuilder;
    }
}