HEX
Server: LiteSpeed
System: Linux server315.web-hosting.com 4.18.0-553.54.1.lve.el8.x86_64 #1 SMP Wed Jun 4 13:01:13 UTC 2025 x86_64
User: globfdxw (6114)
PHP: 8.1.34
Disabled: NONE
Upload Files
File: /home/globfdxw/www/wp-content/plugins/give/src/Framework/QueryBuilder/QueryBuilder.php
<?php

namespace Give\Framework\QueryBuilder;

use Give\Framework\QueryBuilder\Concerns\Aggregate;
use Give\Framework\QueryBuilder\Concerns\CRUD;
use Give\Framework\QueryBuilder\Concerns\FromClause;
use Give\Framework\QueryBuilder\Concerns\GroupByStatement;
use Give\Framework\QueryBuilder\Concerns\HavingClause;
use Give\Framework\QueryBuilder\Concerns\InsertInto;
use Give\Framework\QueryBuilder\Concerns\JoinClause;
use Give\Framework\QueryBuilder\Concerns\LimitStatement;
use Give\Framework\QueryBuilder\Concerns\MetaQuery;
use Give\Framework\QueryBuilder\Concerns\OffsetStatement;
use Give\Framework\QueryBuilder\Concerns\OrderByStatement;
use Give\Framework\QueryBuilder\Concerns\SelectStatement;
use Give\Framework\QueryBuilder\Concerns\TablePrefix;
use Give\Framework\QueryBuilder\Concerns\UnionOperator;
use Give\Framework\QueryBuilder\Concerns\WhereClause;

/**
 * @since 2.19.0
 */
class QueryBuilder
{
    use Aggregate;
    use CRUD;
    use FromClause;
    use GroupByStatement;
    use HavingClause;
    use JoinClause;
    use LimitStatement;
    use MetaQuery;
    use OffsetStatement;
    use OrderByStatement;
    use SelectStatement;
    use TablePrefix;
    use UnionOperator;
    use WhereClause;
    use InsertInto;

    /**
     * @return string
     */
    public function getSQL()
    {
        $sql = array_merge(
            $this->getSelectSQL(),
            $this->getFromSQL(),
            $this->getJoinSQL(),
            $this->getWhereSQL(),
            $this->getGroupBySQL(),
            $this->getHavingSQL(),
            $this->getOrderBySQL(),
            $this->getLimitSQL(),
            $this->getOffsetSQL(),
            $this->getUnionSQL()
        );

        // Trim double spaces added by DB::prepare
        return str_replace(
            ['   ', '  '],
            ' ',
            implode(' ', $sql)
        );
    }
}