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

WhereExpression   A

Complexity

Total Complexity 4

Size/Duplication

Total Lines 14
Duplicated Lines 0 %

Coupling/Cohesion

Components 1
Dependencies 2

Test Coverage

Coverage 100%

Importance

Changes 0
Metric Value
dl 0
loc 14
ccs 9
cts 9
cp 1
rs 10
c 0
b 0
f 0
wmc 4
lcom 1
cbo 2

1 Method

Rating   Name   Duplication   Size   Complexity  
A toSql() 0 11 4
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