Total Complexity | 6 |
Total Lines | 28 |
Duplicated Lines | 0 % |
Changes | 0 |
1 | <?php |
||
18 | final class PhoneField |
||
19 | { |
||
20 | private string $phone; |
||
21 | |||
22 | public function __construct(string $phone) |
||
23 | { |
||
24 | if (false === \filter_var($phone, \FILTER_SANITIZE_NUMBER_INT)) { |
||
25 | throw new InvalidPhone(); |
||
26 | } |
||
27 | |||
28 | $phoneSanitized = \filter_var($phone, \FILTER_SANITIZE_NUMBER_INT); |
||
29 | $phoneToCheck = \str_replace('-', '', $phoneSanitized); |
||
30 | |||
31 | if (10 > \strlen($phoneToCheck) || \strlen($phoneToCheck) > 14) { |
||
32 | throw new InvalidPhone(); |
||
33 | } |
||
34 | |||
35 | $this->phone = $phoneSanitized; |
||
36 | } |
||
37 | |||
38 | public static function fromString(string $phone): self |
||
41 | } |
||
42 | |||
43 | public function getValue(): string |
||
46 | } |
||
47 | } |
||
48 |