PluginProbe
GiveWP – Donation Plugin and Fundraising Platform / 2.19.6
GiveWP – Donation Plugin and Fundraising Platform v2.19.6
4.16.8 4.16.7.2 4.16.7.1 4.16.7 4.16.6.1 4.16.6 4.16.5.1 4.16.5 4.16.4 4.16.3 4.16.2 4.16.1 4.16.0 4.15.5 4.15.4 4.15.3 4.15.2 4.15.1 4.15.0 2.3.0 2.3.1 2.3.2 2.30.0 2.31.0 2.31.1 All 253 releases
give / src / Framework / QueryBuilder / QueryBuilder.php

QueryBuilder.php in GiveWP – Donation Plugin and Fundraising Platform 2.19.6, at src/Framework/QueryBuilder/QueryBuilder.php

66 lines 1.8 KB
No matching file
Up and down to move Enter to open Esc to close
Raw Download Zip
1 <?php
2
3 namespace Give\Framework\QueryBuilder;
4
5 use Give\Framework\QueryBuilder\Concerns\Aggregate;
6 use Give\Framework\QueryBuilder\Concerns\CRUD;
7 use Give\Framework\QueryBuilder\Concerns\FromClause;
8 use Give\Framework\QueryBuilder\Concerns\GroupByStatement;
9 use Give\Framework\QueryBuilder\Concerns\HavingClause;
10 use Give\Framework\QueryBuilder\Concerns\JoinClause;
11 use Give\Framework\QueryBuilder\Concerns\LimitStatement;
12 use Give\Framework\QueryBuilder\Concerns\MetaQuery;
13 use Give\Framework\QueryBuilder\Concerns\OffsetStatement;
14 use Give\Framework\QueryBuilder\Concerns\OrderByStatement;
15 use Give\Framework\QueryBuilder\Concerns\SelectStatement;
16 use Give\Framework\QueryBuilder\Concerns\TablePrefix;
17 use Give\Framework\QueryBuilder\Concerns\UnionOperator;
18 use Give\Framework\QueryBuilder\Concerns\WhereClause;
19
20 /**
21 * @since 2.19.0
22 */
23 class QueryBuilder
24 {
25 use Aggregate;
26 use CRUD;
27 use FromClause;
28 use GroupByStatement;
29 use HavingClause;
30 use JoinClause;
31 use LimitStatement;
32 use MetaQuery;
33 use OffsetStatement;
34 use OrderByStatement;
35 use SelectStatement;
36 use TablePrefix;
37 use UnionOperator;
38 use WhereClause;
39
40 /**
41 * @return string
42 */
43 public function getSQL()
44 {
45 $sql = array_merge(
46 $this->getSelectSQL(),
47 $this->getFromSQL(),
48 $this->getJoinSQL(),
49 $this->getWhereSQL(),
50 $this->getGroupBySQL(),
51 $this->getHavingSQL(),
52 $this->getOrderBySQL(),
53 $this->getLimitSQL(),
54 $this->getOffsetSQL(),
55 $this->getUnionSQL()
56 );
57
58 // Trim double spaces added by DB::prepare
59 return str_replace(
60 [' ', ' '],
61 ' ',
62 implode(' ', $sql)
63 );
64 }
65 }
66