0 follower

Final Class Yiisoft\Db\Expression\Value\Builder\ParamBuilder

InheritanceYiisoft\Db\Expression\Value\Builder\ParamBuilder
ImplementsYiisoft\Db\Expression\ExpressionBuilderInterface

Implements the {@see ExpressionBuilderInterface} interface, is used to build {@see Param} objects.

Constants

Hide inherited constants

Constant Value Description Defined By
PARAM_PREFIX ':pv' Yiisoft\Db\Expression\Value\Builder\ParamBuilder

Method Details

Hide inherited methods

build() public method

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

                public function build(ExpressionInterface $expression, array &$params = []): string
{
    $placeholder = self::PARAM_PREFIX . count($params);
    $additionalCount = 0;
    while (isset($params[$placeholder])) {
        $placeholder = self::PARAM_PREFIX . count($params) . '_' . $additionalCount;
        ++$additionalCount;
    }
    $params[$placeholder] = $expression;
    return $placeholder;
}