shippinno/email

此包的最新版本(v1.0.4)没有提供许可信息。

v1.0.4 2022-01-21 07:10 UTC

This package is not auto-updated.

Last update: 2024-09-27 21:08:13 UTC


README

Scrutinizer Code Quality Code Coverage Build Status

安装

$ composer require shippinno/email

使用

使用 SendEmail 发送 Email。如果设置了 $maxReattempts 属性,它将重试发送。

use Shippinno\Email\SwiftMailer\SwiftMailerSendEmail;
use Tanigami\ValueObjects\Web\Email;
use Swift_Mailer;

$sendEmail = new SwiftMailerSendEmail(new Swift_Mailer(...));
$sendEmail->execute(
    new Email(...),
    3 // max reattempts
);

处理非RFC电子邮件地址

Swift Mailer

默认情况下,Swift Mailer 会拒绝不符合RFC的电子邮件地址。

您可以设置自定义电子邮件验证器和Mime语法(用于Swift Mailer 5.x兼容性),通过调用 allow_non_rfc_email_address(); 函数允许非RFC电子邮件地址(例如 email.@example.com)。

use function Shippinno\Email\SwiftMailer\register_swift_non_rfc_email_validator;

allow_non_rfc_email_address();
(new Swift_Message)->setTo('email.@example.com'); // => OK

EmailAddress 对象

Tanigami\ValueObjects\Web\EmailAddress 默认要求其值符合RFC。您可以通过将构造函数的第二个属性设置为 true 来使其进行软验证。

new EmailAddress('email..@example.com') // => InvalidArgumentException
new EmailAddress('email..@example.com', true); // => OK