wasabi / wasabimail
Zend Framework 2 邮件模块服务。此邮件模块增强了ZF2的邮件功能,便于使用。它支持文件附件和模板邮件编辑。它包含一个可定制的响应式邮件模板。
1.4
2016-02-11 08:33 UTC
Requires
- php: ~5.4|~7.0
- zendframework/zend-config: ~2.2
- zendframework/zend-console: ~2.2
- zendframework/zend-eventmanager: ~2.2
- zendframework/zend-json: ~2.2
- zendframework/zend-mail: ~2.2
- zendframework/zend-mime: ~2.2
- zendframework/zend-modulemanager: ~2.2
- zendframework/zend-mvc: ~2.2
- zendframework/zend-servicemanager: ~2.2
- zendframework/zend-stdlib: ~2.2
- zendframework/zend-view: ~2.2
This package is not auto-updated.
Last update: 2024-09-14 17:53:41 UTC
README
此邮件模块增强了ZF2的邮件功能,便于使用。它支持文件附件和模板邮件编辑。
配置
邮件模块被配置为服务并注册到服务管理器。您可以在 vendor/WasabiMail/config.php 中配置3种默认的 env 类型。
- local - 发送的邮件以文本文件形式保存在 vendor/WasabiMail/localMails 中
- develop - 用于预发布或开发服务器。假设邮件服务器可访问。邮件发送到 config.php 中指定的地址
- production - 传输者是 SendMail。这只能在 Module.php 中更改
如果需要,您可以在 Module.php 中更改此行为。
设置环境类型
建议在配置文件夹的 local.php 中设置 env 类型。通常此文件不会被部署,应与特定服务器环境不同。
将以下代码复制到 local.php
"env" => array(
"type" => "local"
#"type" => "develop"
#"type" => "production"
),
确保只有一个类型处于活动状态。
示例
简单使用
$mail = $this->getServiceLocator()->get("Mail");
$mail->setBody("Hello World");
$mail->setTo("recipient@domain.com");
$mail->send();
使用Html模板
使用模板发送邮件基于ZF2的ViewModel方法。您只需创建一个新的ZF2 ViewModel 实例,设置您的模板,填写您的变量,并将其传递给邮件模块的 setBody 方法。
WasabiMail包含一个可定制的响应式 Html 邮件模板,您可以按自己的需求进行定制。此模板与Microsoft Outlook或Google Mail等常见电子邮件客户端进行了测试。
$mail = $this->getServiceLocator()->get("Mail");
$viewModel = new ViewModel();
$viewModel->setTemplate("responsive");
$mail->setBody($viewModel);
$mail->send();
模板路径堆栈设置为 WasabiMail/templates。如果需要,您可以在 config.php 中更改此设置
文件附件
您可以通过提供路径并使用 addAttachment
方法将文件附加到邮件中。
使用
$mail->addAttachment('data/mail/attachments/file1.pdf');
您可以为每个要附加的附件调用此方法。您可以使用第二个参数为要附加的文件指定另一个名称。否则将使用真实文件名。