Range::isValid()   A
last analyzed

Complexity

Conditions 4
Paths 4

Size

Total Lines 9
Code Lines 5

Duplication

Lines 0
Ratio 0 %

Code Coverage

Tests 6
CRAP Score 4

Importance

Changes 0
Metric Value
eloc 5
c 0
b 0
f 0
dl 0
loc 9
ccs 6
cts 6
cp 1
rs 10
cc 4
nc 4
nop 2
crap 4
1
<?php
2
3
namespace WebStream\Annotation\Attributes\Ext\ValidateRule;
4
5
/**
6
 * Range
7
 * @author Ryuichi TANAKA.
8
 * @since 2015/03/30
9
 * @version 0.4
10
 */
11
class Range implements IValidate
12
{
13
    /**
14
     * {@inheritdoc}
15
     */
16 8
    public function isValid($value, string $rule)
17
    {
18 8
        $isValid = false;
19 8
        if (preg_match('/^range\[([-]?\d+\.?\d*?)\.\.([-]?\d+\.?\d*?)\]$/', $rule, $matches)) {
20 8
            $value = doubleval($value);
21 8
            $isValid = $value === null || ($value >= doubleval($matches[1]) && $value <= doubleval($matches[2]));
22
        }
23
24 8
        return $isValid;
25
    }
26
}
27