framework/db/mysql/JsonExpressionBuilder.php
public function build(ExpressionInterface $expression, array &$params = [])
    {
        $value = $expression->getValue();

        if ($value instanceof Query) {
            list ($sql, $params) = $this->queryBuilder->build($value, $params);
            return "($sql)";
        }

        $placeholder = static::PARAM_PREFIX . count($params);
        $params[$placeholder] = Json::encode($value);

        return "CAST($placeholder AS JSON)";
    }
public function build(ExpressionInterface $expression, array &$params = [])
    {
        $value = $expression->getValue();

        if ($value instanceof Query) {
            list ($sql, $params) = $this->queryBuilder->build($value, $params);
            return "($sql)";
        }

        $placeholder = static::PARAM_PREFIX . count($params);
        $params[$placeholder] = Json::encode($value);

        return "CAST($placeholder AS JSON)";
    }
public function build ( ExpressionInterface $ expression , array & $ params = [ ] ) { $ value = $ expression -> getValue ( ) ; if ( $ value instanceof Query ) { list ( $ sql , $ params ) = $ this -> queryBuilder -> build ( $ value , $ params ) ; return "($sql)" ; } $ placeholder = static :: PARAM_PREFIX . count ( $ params ) ; $ params [ $ placeholder ] = Json :: encode ( $ value ) ; return "CAST($placeholder AS JSON)" ; }
{@inheritdoc}
@param JsonExpression|ExpressionInterface $expression the expression to be built
{