谜石 / 破壳邮件
一个 Laminas 模块,用于提供由服务管理器构建和配置的邮件传输
v0.1.2
2020-05-08 14:30 UTC
Requires
- php: ^7.3
- container-interop/container-interop: ^1.2
- laminas/laminas-component-installer: ^2.0 || ^1.0 || ^0.7
- laminas/laminas-mail: ^2.10
- laminas/laminas-servicemanager: ^3.4
Requires (Dev)
- ext-json: *
- phpmd/phpmd: ^2.8
- phpunit/phpunit: ^8.4
- squizlabs/php_codesniffer: ^3.5
This package is auto-updated.
Last update: 2024-09-26 08:23:01 UTC
README
一个提供由服务管理器构建和配置的邮件传输的 Laminas 模块
安装
此模块使用 composer 进行安装。有关 composer 文档,请参阅 getcomposer.org。
composer require riddlestone/brokkr-mail
使用方法
构建消息
此模块添加了一个用于生成使用 Laminas View 创建内容的消息的工厂。
// local.config.php return [ 'view_manager' => [ 'template_path_stack' => [ __DIR__ . '/../views', ], ], ];
// some_factory_or_service.php use Laminas\ServiceManager\ServiceManager; use Riddlestone\Brokkr\Mail\MessageFactory; /** @var ServiceManager $serviceManager */ $messageFactory = $serviceManager->get(MessageFactory::class); $message = $messageFactory( 'mail/my-html-template', 'mail/my-text-template', [ 'view_variable_1' => 'Some value', 'view_variable_2' => 'Some other value', ], );
创建后,您需要设置主题和其他头字段(如收件人、发件人等)。
创建的消息将有两个备选的 mime 部分:文本和 HTML。如果省略文本模板,则文本将从 HTML 内容创建。
构建传输
此模块添加了一个 Laminas\Mail\Transport\TransportInterface
工厂,它从 mail.transport
配置中创建它。
例如,要使用共享 SMTP 传输
// local.config.php return [ 'mail' => [ 'transport' => [ 'type' => 'smtp', 'options' => [ 'name' => 'smtp.example.com', 'host' => 'smtp.example.com', 'connection_class' => 'login', 'connection_config' => [ 'username' => 'me@example.com', 'password' => 'my-p@ssw0rd', ], ], ], ], ];
// some_factory_or_service.php use Laminas\Mail\Message; use Laminas\Mail\Transport\TransportInterface; use Laminas\ServiceManager\ServiceManager; /** @var ServiceManager $serviceManager */ /** @var Message $message */ /** @var TransportInterface $transport */ $transport = $serviceManager->get(TransportInterface::class); $transport->send($message);
有关配置选项的更多详细信息,请参阅 Laminas Mail 文档。