Total Complexity | 4 |
Total Lines | 23 |
Duplicated Lines | 0 % |
Changes | 1 | ||
Bugs | 0 | Features | 0 |
1 | <?php |
||
8 | class IpAddress implements IpAddressInterface |
||
9 | { |
||
10 | private string $value; |
||
|
|||
11 | |||
12 | 3 | public function __construct(string $value) |
|
13 | { |
||
14 | 3 | $this->value = $this->validate($value); |
|
15 | } |
||
16 | |||
17 | public function getValue(): string |
||
18 | { |
||
19 | return $this->value; |
||
20 | } |
||
21 | |||
22 | 3 | private function validate(string $value): string |
|
23 | { |
||
24 | 3 | $value = trim($value); |
|
25 | |||
26 | 3 | if (!filter_var($value, FILTER_VALIDATE_IP)) { |
|
27 | 3 | throw new IncorrectIpException($value); |
|
28 | } |
||
29 | |||
30 | return $value; |
||
31 | } |
||
33 |