Passed
Push — master ( 59e1e1...c1229c )
by Ryuichi
03:02
created

Range   A

Complexity

Total Complexity 4

Size/Duplication

Total Lines 14
Duplicated Lines 0 %

Test Coverage

Coverage 100%

Importance

Changes 0
Metric Value
dl 0
loc 14
rs 10
c 0
b 0
f 0
ccs 6
cts 6
cp 1
wmc 4

1 Method

Rating   Name   Duplication   Size   Complexity  
A isValid() 0 9 4
1
<?php
2
namespace WebStream\Annotation\Attributes\Ext\ValidateRule;
3
4
/**
5
 * Range
6
 * @author Ryuichi TANAKA.
7
 * @since 2015/03/30
8
 * @version 0.4
9
 */
10
class Range implements IValidate
11
{
12
    /**
13
     * {@inheritdoc}
14
     */
15 8
    public function isValid($value, $rule)
16
    {
17 8
        $isValid = false;
18 8
        if (preg_match('/^range\[([-]?\d{1,}\.?\d{0,}?)\.\.([-]?\d{1,}\.?\d{0,}?)\]$/', $rule, $matches)) {
19 8
            $value = doubleval($value);
20 8
            $isValid = $value === null || ($value >= doubleval($matches[1]) && $value <= doubleval($matches[2]));
21
        }
22
23 8
        return $isValid;
24
    }
25
}
26