charcoal/email
Composer 安装命令:
composer require charcoal/email
包简介
Email sending and queueing for Charcoal
关键字:
README 文档
README
The Email package provides an integration with PHPMailer for sending emails.
Installation
composer require charcoal/email
For Charcoal projects, the service provider can be registered from your configuration file:
{
"service_providers": {
"charcoal/email/service-provider/email": {}
}
}
Usage
use Charcoal\Email\ServiceProvider\EmailServiceProvider; use Pimple\Container; $container = new Container(); $container->register(new EmailServiceProvider()); $email = $container['email']; $email->setData([ 'from' => '"Company inc." <company.inc@example.com>', 'bcc' => 'shadow@example.com', 'to' => [ 'recipient@example.com', '"Some guy" <someguy@example.com>', [ 'name' => 'Other guy', 'email' => 'otherguy@example.com', ], ], 'reply_to' => [ 'name' => 'Jack CEO', 'email' => 'jack@example.com' ], 'subject' => $this->translator->trans('Email subject'), 'campaign' => 'Campaign identifier', 'template_ident' => 'foo/email/default-email' 'attachments' => [ 'foo/bar.pdf', 'foo/baz.pdf', ], ]); // Dispatch immediately: $email->send(); // Alternately, dispatch at a later date using the queue system: $email->queue('in 5 minutes');
Email Config
The entire email system can be configured from the main app config, in the email config key.
{
"email": {
"smtp": true,
"smtp_hostname": "smtp.example.com",
"smtp_port": 25,
"smtp_security": "tls",
"smtp_username": "user@example.com",
"smtp_password": "password",
"default_from": "webproject@example.com",
"default_reply_to": "webproject@example.com",
"default_track": false,
"default_log": true
}
}
Service Provider
All email services can be quickly registered to a service container with \Charcoal\Email\ServiceProvider\EmailServiceProvider.
Provided services:
| Service | Type | Description |
|---|---|---|
Email[1] |
An email object (factory). | |
| email/factory | FactoryInterface[2] |
An email factory, to create email objects. |
Notes:
- [1]
\Charcoal\Email\Email. - [2]
Charcoal\Factory\FactoryInterface.
Also available are the following helpers:
| Helper Service | Type | Description |
|---|---|---|
| email/config | EmailConfig[3] |
Email configuration. |
| email/view | ViewInterface[4] |
The view object to render email templates ($container['view']). |
Notes:
- [3]
\Charcoal\Email\EmailConfig. - [4]
\Charcoal\View\ViewInterface.
Resources
charcoal/email 适用场景与选型建议
charcoal/email 是一款 基于 PHP 开发的 Composer 扩展包,目前已累计 11 次下载、GitHub Stars 达 0, 最近一次更新时间为 2022 年 11 月 08 日, 在 PHP 生态内属于活跃度较高的组件。
它主要适用于以下技术方向: 「queue」 「email」 「phpmailer」 「charcoal」 等业务场景。在实际项目中,围绕这些方向常见需要落地的问题包括:接口对接、性能调优、并发安全、与既有框架(Laravel / ThinkPHP / Yii / Webman 等)的兼容适配,以及生产环境的日志埋点与稳定性保障。
我们在过去多个企业项目中使用过 charcoal/email 或与其功能相近的方案,如果你在选型或落地过程中遇到问题,例如 版本兼容、二次改造、私有化封装、与内部系统对接、生产 BUG 排查,欢迎联系我们协助评估。
基于 charcoal/email 在你已有业务上做功能扩展、字段裁剪、UI 适配、与内部账号 / 权限 / 日志系统的深度对接。
线上偶发问题、内存泄漏、慢查询、并发异常等排查修复;针对高流量场景做缓存、队列、索引层面的调优。
承接完整的项目从需求 → 设计 → 开发 → 上线 → 长期运维;也可按月提供技术保姆服务。
与 charcoal/email 相关的其它包
同方向 / 同关键字的高下载量 PHP Composer 包推荐,方便对比选型:
PHP AMQP Binding Library
A Laravel package to monitor queue jobs.
WordPress plugin to configure wp_mail() via MAILER_DSN environment variable.
PHPMailer implementation for SilverStripe allowing custom smtp.
Extensible library for building notifications and sending them via different delivery channels.
Email+ extends Kirby's email capabilities by adding support for multiple email services using the same Kirby email API.
统计信息
- 总下载量: 11
- 月度下载量: 0
- 日度下载量: 0
- 收藏数: 0
- 点击次数: 18
- 依赖项目数: 1
- 推荐数: 0
其他信息
- 授权协议: MIT
- 更新时间: 2022-11-08