| Total Complexity | 2 | 
| Total Lines | 19 | 
| Duplicated Lines | 0 % | 
| Changes | 2 | ||
| Bugs | 0 | Features | 1 | 
| 1 | <?php | ||
| 7 | class ValidVatId implements Rule | ||
| 8 | { | ||
| 9 | /** | ||
| 10 | * Check VAT ID for validity. | ||
| 11 | */ | ||
| 12 | public function passes($attribute, $value): bool | ||
| 13 |     { | ||
| 14 | // Remove all characters except letters and numbers | ||
| 15 |         $value = preg_replace('/[^a-zA-Z0-9]/', '', $value); | ||
| 16 | |||
| 17 |         return preg_match('/[a-zA-Z]{2}[0-9]{0,12}$/', $value); | ||
|  | |||
| 18 | } | ||
| 19 | |||
| 20 | /** | ||
| 21 | * Get the validation error message. | ||
| 22 | */ | ||
| 23 | public function message(): string | ||
| 26 | } | ||
| 27 | } | ||
| 28 |