phore/mail

安装量: 8,508

依赖: 0

建议者: 0

安全性: 0

星星: 0

关注者: 3

分支: 0

公开问题: 0

语言:Shell

v0.1.5 2023-06-26 17:24 UTC

This package is auto-updated.

Last update: 2024-08-26 20:21:06 UTC


README

这是一个著名的 PHPMailer 邮件类和 text/template 模板系统的模板包装器。

  • 单个类
  • 多部分 MIME
  • 使用 mailtrap.io 进行测试

演示模板

{mail to="abc@abc.de" name="Some Name"}
{mail from="sender@address.de" name="Me"}
{mail cc="mail@email" name="Some Name"}
{mail bcc="mail@email" name="Some Name"}
{subject}Hello {=name} - You are the welcome{/subject}

{html}
    <body>
        <b>Hello {= name}</b>,
        <p>
            This HTML Mime Mail
        </p>
    </body>
{/html}

Hello {= name},

This is the alternative Text body

可用的邮件参数

发送邮件的脚本

具有自动故障转移至第二个 SMTP-服务器。

$mailer = new PhoreMailer();
$mailer->config([
    "Host"      => "smtp1.example.org;smtp2.example.org",
    "Username"  => "user@example.org",
    "Password"  => "secret", 
    "SMTPAuth"  => true
]);
$mailer->send($templateText, ["name"=>"Joe Doe"]);

安装

composer require phore/mail

配置 PHPMailer / text-template

$mailer = new PhoreMailer();
$mailer->phpmailer->phpMailerFunction();
$mailer = new PhoreMailer();
$mailer->textTemplate->textTemplateFunction();

使用 SMTP 发送邮件而不使用邮件服务器

此方法仅用于测试。大多数邮件服务器将拒绝使用此方法传输的邮件。


演示

调试

而不是发送邮件,您可以通过调用 prepare() 来检索 PHPMailer 实例。

$phpmail = $phoreMailer->prepare($template,[]);
print_r ($phpmail);
$phpmail->Send();

拦截外出邮件

$mailer->setSendMailFunction(function (PHPMailer $mail, PhoreMailer $phoreMailer) {
     $res["to"] = $mail->getAllRecipientAddresses();
     $res["subject"] = $mail->Subject;
     $res["html"] = $mail->Body;
     $res["text"] = $mail->AltBody;
});