Code Coverage |
||||||||||
Lines |
Functions and Methods |
Classes and Traits |
||||||||
Total | |
100.00% |
9 / 9 |
|
100.00% |
1 / 1 |
CRAP | |
100.00% |
1 / 1 |
Slug | |
100.00% |
9 / 9 |
|
100.00% |
1 / 1 |
2 | |
100.00% |
1 / 1 |
validate | |
100.00% |
9 / 9 |
|
100.00% |
1 / 1 |
2 |
1 | <?php |
2 | |
3 | namespace Verja\Validator; |
4 | |
5 | use Verja\Error; |
6 | use Verja\Validator; |
7 | |
8 | class Slug extends Validator |
9 | { |
10 | /** |
11 | * Validate $value |
12 | * |
13 | * @param mixed $value |
14 | * @param array $context |
15 | * @return bool |
16 | */ |
17 | public function validate($value, array $context = []): bool |
18 | { |
19 | $regex = '/^[0-9a-z-_]+$/u'; |
20 | if (preg_match($regex, $value)) { |
21 | return true; |
22 | } |
23 | |
24 | $this->error = new Error( |
25 | 'NO_SLUG', |
26 | $value, |
27 | 'value should be a valid slug' |
28 | ); |
29 | return false; |
30 | } |
31 | } |