Laravel Spmphoy Mailer 电子邮件“[email protected]”不符合 RFC 2822 的 addr-spec。错误

Laravel Spmphoy Mailer Email "[email protected]" does not comply with addr-spec of RFC 2822. error

提问人:Subash Rijal 提问时间:10/12/2023 更新时间:10/12/2023 访问量:37

问:

无论如何,我想跳过 rfc 2822 抱怨 laravel。我知道这不是一个好的做法,但无论如何我都需要这样做。我可以看到异常是从供应商抛出的。
但是,如何在不更改供应商文件的情况下跳过此操作。当 laravel 使用 swiftmailer 时,我们可以覆盖创建自定义类并从服务提供商绑定,如下所示。 但我正在为如何在 Laravel 10 中对 Symphony Mailer 做同样的事情而苦苦挣扎。
vendor/symfony/mime/Address.php

class AllowNonRfcComplaintEmailValidator extends EmailValidator
{
    /**
     * 最低限、@が含まれていて、ドメインとアカウント名が含まれているメールアドレスは許可します
     * @param string          $email
     * @param EmailValidation $emailValidation
     * @return bool
     */
    public function isValid($email, EmailValidation $emailValidation): bool
    {
        // warningsとerrorのプロパティを埋める
        parent::isValid($email, $emailValidation);

        if (substr_count($email, '@') !== 1) {
            return false;
        }

        list($account, $domain) = explode('@', $email);

        if (strlen($account) > 0 && strlen($domain) > 0) {
            return true;
        }

        return false;
    }
}

Swift::init(function () {
                Swift_DependencyContainer::getInstance()
                    ->register('email.validator')
                    ->asSharedInstanceOf(AllowNonRfcComplaintEmailValidator::class);
            }
        );

我怎样才能在 laravel 10 中做到这一点。 先谢谢你,Symphony mailer

PHP Laravel 电子邮件 RFC

评论


答: 暂无答案