0 follower

Final Class Yiisoft\Db\Pgsql\Expression\Builder\MultiRangeValueBuilder

InheritanceYiisoft\Db\Pgsql\Expression\Builder\MultiRangeValueBuilder
ImplementsYiisoft\Db\Expression\ExpressionBuilderInterface

Method Details

Hide inherited methods

__construct() public method

public __construct( \Yiisoft\Db\QueryBuilder\QueryBuilderInterface $queryBuilder ): mixed
$queryBuilder \Yiisoft\Db\QueryBuilder\QueryBuilderInterface

                public function __construct(
    private readonly QueryBuilderInterface $queryBuilder,
) {}

            
build() public method

public build( \Yiisoft\Db\Expression\ExpressionInterface $expression, array &$params = [] ): string
$expression \Yiisoft\Db\Expression\ExpressionInterface
$params array

                public function build(ExpressionInterface $expression, array &$params = []): string
{
    $ranges = array_map(
        fn(string|ExpressionInterface $range): string => trim(
            $range instanceof ExpressionInterface
                ? $this->queryBuilder->prepareValue($range)
                : $range,
            '\'',
        ),
        $expression->ranges,
    );
    return '\'{' . implode(',', $ranges) . '}\'';
}