Passed
Branch 4.1.0 (271fee)
by Joao
03:47
created

ORMHelper   A

Complexity

Total Complexity 4

Size/Duplication

Total Lines 27
Duplicated Lines 0 %

Test Coverage

Coverage 0%

Importance

Changes 2
Bugs 0 Features 0
Metric Value
eloc 14
c 2
b 0
f 0
dl 0
loc 27
ccs 0
cts 23
cp 0
rs 10
wmc 4

1 Method

Rating   Name   Duplication   Size   Complexity  
A processLiteral() 0 25 4
1
<?php
2
3
namespace ByJG\MicroOrm;
4
5
class ORMHelper
6
{
7
    public static function processLiteral($sql, &$params)
8
    {
9
        if (!is_array($params)) {
10
            return $sql;
11
        }
12
13
        foreach ($params as $field => $param) {
14
            if ($param instanceof Literal) {
15
                $literalValue = $param->getLiteralValue();
16
                $sql = preg_replace(
17
                    [
18
                        "/\\[\\[$field\\]\\]/",
19
                        "/:$field([^\\d\\w]|$)/"
20
                    ],
21
                    [
22
                        $literalValue,
23
                        "$literalValue\$1"
24
                    ],
25
                    $sql
26
                );
27
                unset($params[$field]);
28
            }
29
        }
30
31
        return $sql;
32
    }
33
}
34