Вход Регистрация
Файл: vendor/egulias/email-validator/src/Validation/Extra/SpoofCheckValidation.php
Строк: 43
<?php

namespace EguliasEmailValidatorValidationExtra;

use 
Spoofchecker;
use 
EguliasEmailValidatorEmailLexer;
use 
EguliasEmailValidatorResultSpoofEmail;
use 
EguliasEmailValidatorResultInvalidEmail;
use 
EguliasEmailValidatorValidationEmailValidation;

class 
SpoofCheckValidation implements EmailValidation
{
    
/**
     * @var InvalidEmail|null
     */
    
private $error;

    public function 
__construct()
    {
        if (!
extension_loaded('intl')) {
            throw new 
LogicException(sprintf('The %s class requires the Intl extension.'__CLASS__));
        }
    }

    
/**
     * @psalm-suppress InvalidArgument
     */
    
public function isValid(string $emailEmailLexer $emailLexer) : bool
    
{
        
$checker = new Spoofchecker();
        
$checker->setChecks(Spoofchecker::SINGLE_SCRIPT);

        if (
$checker->isSuspicious($email)) {
            
$this->error = new SpoofEmail();
        }

        return 
$this->error === null;
    }

    
/**
     * @return InvalidEmail
     */
    
public function getError() : ?InvalidEmail
    
{
        return 
$this->error;
    }

    public function 
getWarnings() : array
    {
        return [];
    }
}
Онлайн: 1
Реклама