PluginProbe ʕ •ᴥ•ʔ
GiveWP – Donation Plugin and Fundraising Platform / 2.25.0
GiveWP – Donation Plugin and Fundraising Platform v2.25.0
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 2.32.0 2.33.0 2.33.1 2.33.2 2.33.3 2.33.4 2.33.5 2.4.0 2.4.1 2.4.2 2.4.3 2.4.4 2.4.5 2.4.6 2.4.7 2.5.0 2.5.1 2.5.10 2.5.11 2.5.12 2.5.13 2.5.2 2.5.3 2.5.4 2.5.5 2.5.6 2.5.7 2.5.8 2.5.9 2.6.0 2.6.1 2.6.2 2.6.3 2.7.0 2.7.1 2.7.2 2.7.3 2.7.4 2.7.5 2.8.0 2.8.1 2.9.0 2.9.1 2.9.2 2.9.3 2.9.4 2.9.5 2.9.6 2.9.7 3.0.0 3.0.1 3.0.2 3.0.3 3.0.4 3.1.0 3.1.1 3.1.2 3.10.0 3.11.0 3.12.0 3.12.1 3.12.2 3.12.3 3.13.0 3.14.0 3.14.1 3.14.2 3.15.0 3.15.1 3.16.0 3.16.1 3.16.2 3.16.3 3.16.4 3.16.5 3.17.0 3.17.1 3.17.2 3.18.0 3.19.0 3.19.1 3.19.2 3.19.3 3.19.4 3.2.0 3.2.1 3.2.2 3.20.0 3.21.0 3.21.1 3.22.0 3.22.1 3.22.2 3.3.0 3.3.1 3.4.0 3.4.1 3.4.2 3.5.0 3.5.1 3.6.0 3.6.1 3.6.2 3.7.0 3.8.0 3.9.0 4.0.0 4.1.0 4.1.1 4.10.0 4.10.1 4.11.0 4.12.0 4.13.0 4.13.1 4.13.2 4.14.0 4.14.1 4.14.2 4.14.3 4.14.4 4.14.5 4.14.6 4.2.0 4.2.1 4.3.0 4.3.1 4.3.2 4.4.0 4.5.0 4.6.1 4.7.0 4.7.1 4.8.0 4.8.1 4.9.0 trunk 1.9.0 2.0.0 2.0.1 2.0.2 2.0.3 2.0.4 2.0.5 2.0.6 2.0.7 2.1.0 2.1.1 2.1.2 2.1.3 2.1.4 2.1.5 2.1.6 2.1.7 2.1.8 2.10.0 2.10.1 2.10.2 2.10.3 2.10.4 2.11.0 2.11.1 2.11.2 2.11.3 2.12.0 2.12.1 2.12.2 2.12.3 2.13.0 2.13.1 2.13.2 2.13.3 2.13.4 2.14.0 2.15.0 2.16.0 2.16.1 2.17.0 2.17.1 2.17.3 2.18.0 2.18.1 2.19.1 2.19.2 2.19.3 2.19.4 2.19.5 2.19.6 2.19.7 2.19.8 2.2.0 2.2.1 2.2.2 2.2.3 2.2.4 2.2.5 2.2.6 2.20.0 2.20.1 2.20.2 2.21.0 2.21.1 2.21.2 2.21.3 2.21.4 2.22.0 2.22.1 2.22.2 2.22.3 2.23.0 2.23.1 2.23.2 2.24.0 2.24.1 2.24.2 2.25.0 2.25.1 2.25.2 2.25.3 2.26.0 2.27.0 2.27.1 2.27.2 2.27.3 2.28.0 2.29.0 2.29.1 2.29.2
give / src / Framework / QueryBuilder / Clauses / Where.php
give / src / Framework / QueryBuilder / Clauses Last commit date
From.php 4 years ago Having.php 4 years ago Join.php 4 years ago JoinCondition.php 4 years ago MetaTable.php 4 years ago OrderBy.php 4 years ago RawSQL.php 4 years ago Select.php 4 years ago Union.php 4 years ago Where.php 4 years ago
Where.php
117 lines
1 <?php
2
3 namespace Give\Framework\QueryBuilder\Clauses;
4
5 use Give\Framework\QueryBuilder\Types\Operator;
6 use InvalidArgumentException;
7
8 /**
9 * @since 2.19.0
10 */
11 class Where
12 {
13 /**
14 * @var string
15 */
16 public $column;
17
18 /**
19 * @var mixed
20 */
21 public $value;
22
23 /**
24 * @var string
25 */
26 public $comparisonOperator;
27
28 /**
29 * @var string
30 */
31 public $logicalOperator;
32
33 /**
34 * @var string|null
35 */
36 public $type;
37
38 /**
39 * @param string $column
40 * @param string $value
41 * @param string $comparisonOperator
42 * @param string|null $logicalOperator
43 */
44 public function __construct($column, $value, $comparisonOperator, $logicalOperator)
45 {
46 $this->column = trim($column);
47 $this->value = $value;
48 $this->comparisonOperator = $this->getComparisonOperator($comparisonOperator);
49 $this->logicalOperator = $logicalOperator ? $this->getLogicalOperator($logicalOperator) : '';
50 }
51
52 /**
53 * @param string $comparisonOperator
54 *
55 * @return string
56 */
57 private function getComparisonOperator($comparisonOperator)
58 {
59 $operators = [
60 '<',
61 '<=',
62 '>',
63 '>=',
64 '<>',
65 '!=',
66 '=',
67 Operator::LIKE,
68 Operator::NOTLIKE,
69 Operator::IN,
70 Operator::NOTIN,
71 Operator::BETWEEN,
72 Operator::NOTBETWEEN,
73 Operator::ISNULL,
74 Operator::NOTNULL
75 ];
76
77 if (!in_array($comparisonOperator, $operators, true)) {
78 throw new InvalidArgumentException(
79 sprintf(
80 'Unsupported comparison operator %s. Please use one of the supported operators (%s)',
81 $comparisonOperator,
82 implode(',', $operators)
83 )
84 );
85 }
86
87 return $comparisonOperator;
88 }
89
90 /**
91 * @param string $logicalOperator
92 *
93 * @return string
94 */
95 private function getLogicalOperator($logicalOperator)
96 {
97 $operators = [
98 Operator::_AND,
99 Operator::_OR
100 ];
101
102 $logicalOperator = strtoupper($logicalOperator);
103
104 if (!in_array($logicalOperator, $operators, true)) {
105 throw new InvalidArgumentException(
106 sprintf(
107 'Unsupported logical operator %s. Please use one of the supported operators (%s)',
108 $logicalOperator,
109 implode(',', $operators)
110 )
111 );
112 }
113
114 return $logicalOperator;
115 }
116 }
117