Passed
Push — master ( 42367a...08368b )
by Sebastian
02:40
created

Request_Param_Validator_Alpha   A

Complexity

Total Complexity 4

Size/Duplication

Total Lines 18
Duplicated Lines 0 %

Importance

Changes 1
Bugs 0 Features 0
Metric Value
wmc 4
eloc 7
c 1
b 0
f 0
dl 0
loc 18
rs 10

2 Methods

Rating   Name   Duplication   Size   Complexity  
A _validate() 0 11 3
A getDefaultOptions() 0 3 1
1
<?php
2
/**
3
 * File containing the {@link Request_Param_Validator_Alpha} class.
4
 *
5
 * @package Application Utils
6
 * @subpackage Request
7
 * @see Request_Param_Validator_Alpha
8
 */
9
10
declare(strict_types=1);
11
12
namespace AppUtils;
13
14
/**
15
 * Validates a string containing only letters, lowercase and uppercase.
16
 * 
17
 * @package Application Utils
18
 * @subpackage Request
19
 * @author Sebastian Mordziol <[email protected]>
20
 */
21
class Request_Param_Validator_Alpha extends Request_Param_Validator
22
{
23
    public function getDefaultOptions() : array
24
    {
25
        return array();
26
    }
27
    
28
    protected function _validate()
29
    {
30
        if(!is_scalar($this->value)) {
31
            return null;
32
        }
33
        
34
        if(preg_match('/\A[a-zA-Z]+\z/', $this->value)) {
35
            return $this->value;
36
        }
37
        
38
        return null;
39
    }
40
}
41