for testing and deploying your application
for finding and fixing issues
for empowering human code reviews
<?php
declare(strict_types=1);
namespace Yiisoft\Db\QueryBuilder\Condition\Builder;
use Yiisoft\Db\Exception\Exception;
use Yiisoft\Db\Exception\InvalidArgumentException;
use Yiisoft\Db\Exception\InvalidConfigException;
use Yiisoft\Db\Exception\NotSupportedException;
use Yiisoft\Db\Expression\ExpressionBuilderInterface;
use Yiisoft\Db\QueryBuilder\Condition\Interface\ExistConditionInterface;
use Yiisoft\Db\QueryBuilder\QueryBuilderInterface;
/**
* Class ExistsConditionBuilder builds objects of {@see ExistsCondition}.
*/
class ExistsConditionBuilder implements ExpressionBuilderInterface
{
public function __construct(private QueryBuilderInterface $queryBuilder)
}
* @throws Exception|InvalidArgumentException|InvalidConfigException|NotSupportedException
public function build(ExistConditionInterface $expression, array &$params = []): string
$operator = $expression->getOperator();
$query = $expression->getQuery();
$sql = $this->queryBuilder->buildExpression($query, $params);
return "$operator $sql";