ride / lib-mail
Ride 框架的邮件库
1.0.0
2016-10-13 12:10 UTC
Requires
- ride/lib-log: ^1.0.0
- ride/lib-system: ^1.0.0
- ride/lib-validation: ^1.0.0
This package is auto-updated.
Last update: 2024-09-13 00:22:24 UTC
README
PHP Ride 框架的邮件库。
本库包含内容
MailAddress
MailAddress 类用于处理电子邮件地址。所有 MailMessage 的接收者都使用此类设置。它允许直接使用电子邮件地址,也可以使用 name 格式。
MailMessage
MailMessage 类是待发送邮件的数据容器。您可以通过 To、CC 和 BCC 字段设置接收者。您可以将消息标记为 HTML 消息,添加附件等。
MimePart
MimePart 类在内部用于向 MailMessage 添加附件。您也可以手动使用它来创建自定义的多部分消息。
Transport
Transport 接口提供了一种实现实际发送邮件的方式。当您想使用此库发送邮件时,它也是起点,因为它还充当消息的工厂。
此库通过 SimpleTransport 类提供了一个通用实现。它使用 PHP 函数发送邮件。
MessageParser
MessageParser 类是 Transport 实现的帮助器。它接受一个 MailMessage 并将其所有信息提取到一个结构中,该结构可用于传输。
代码示例
请查看以下代码示例,了解此库的一些可能性。
<?php use ride\library\log\Log; use ride\library\mail\transport\SimpleTransport; use ride\library\mail\transport\Transport; use ride\library\system\file\FileSystem; function createTransport(Log $log) { // simple, create an instance $transport = new SimpleTransport($log); // you set some defaults to you don't have to set this to each message $transport->setDefaultFrom('from@domain.com'); $transport->setDefaultReplyTo('from@domain.com'); // you can set a debug address // no recipients in the To, CC and BCC will receive the message, only this debug to address $transport->setDebugTo('me@domain.com'); return $transport; } function sendMail(MandrillTransport $transport, FileSystem $fileSystem) { $message = $transport->createMessage(); $message->setSubject('My subject'); $message->setRecipient('to@domain.com'); $message->addCc('To 2 <to2@domain.com>'); $message->addBcc(array('to3@domain.com', 'To 3 <to3@domain.com>')); $message->setIsHtmlMessage(true); $message->setMessage('<html><body><p>...</p></body></html>'); $file = $fileSystem->getFile('/path/to/image.png'); $message->addAttachement($file, 'image/png'); try { $transport->send($message); } catch (MailException $exception) { } }
相关模块
- ride/app-mail
- ride/app-mail-mandrill
- ride/lib-log
- ride/lib-mail-mandrill
- ride/lib-system
- ride/lib-validation
安装
您可以使用 Composer 安装此库。
composer require ride/lib-mail