Completed
Push — master ( 1e376d...b0060a )
by Changwan
05:50
created

WhereExpression::toSql()   A

Complexity

Conditions 4
Paths 6

Size

Total Lines 11
Code Lines 7

Duplication

Lines 0
Ratio 0 %

Code Coverage

Tests 9
CRAP Score 4

Importance

Changes 0
Metric Value
cc 4
eloc 7
nc 6
nop 0
dl 0
loc 11
ccs 9
cts 9
cp 1
crap 4
rs 9.2
c 0
b 0
f 0
1
<?php
2
namespace Wandu\Database\Query\Expression;
3
4
/**
5
 * WhereExpression = 'WHERE ' ComparisonExpression (' AND '|' OR ') LogicExpression | ComparisonExpression
6
 *
7
 * @example WHERE `abc` = 30
8
 * @example WHERE `abc` = 30 AND (`foo` = 30 OR `foo` = 40)
9
 */
10
class WhereExpression extends LogicalExpression
11
{
12 11
    public function toSql()
13
    {
14 11
        $sql = '';
15 11
        foreach ($this->expressions as $index => $expression) {
16 10
            if ($index) {
17 8
                $sql .= ' ' . $this->operators[$index] . ' ';
18 8
            }
19 10
            $sql .= $expression->toSql();
20 11
        }
21 11
        return $sql ? 'WHERE '. $sql : '';
22
    }
23
}
24