承接 tccl/email 相关项目开发

从需求分析到上线部署,全程专人跟进,保证项目质量与交付效率

邮箱:yvsm@zunyunkeji.com | QQ:316430983 | 微信:yvsm316

tccl/email

Composer 安装命令:

composer require tccl/email

包简介

An email generation library

README 文档

README

This project provides a PHP library for email generation. It supports generating HTML and plain text emails plus multipart emails with embedded attachments.

Installation

$ composer require tccl/email

Sample Usage

Sending HTML email with style modifications

<?php

use TCCL\Email\HTMLGenerator;
use TCCL\Email\Mailer;

$html = new HTMLGenerator;
$html->setContent(file_get_contents('test.html'));
$html->addModifier('*',[
    'styles' => 'max-width: 650px;font-family: sans-serif;',
    'exclude' => array_fill_keys(['html','center'],true),
]);
$html->addModifier('body',[
    'styles' => 'background-color: #f7f7f7',
]);

$mailer = new Mailer($html);
$mailer->sendMail(
    '😀 A test mail for testing purposes',
    Mailer::encodeEmail('Smith, John <john.smith@example.com>'),
    'jill.smith@example.com',
    'Smith, Jill'
);

Sending an email with an attachment

<?php

use TCCL\Email\Attachment;
use TCCL\Email\HTMLGenerator;
use TCCL\Email\Mailer;
use TCCL\Email\MultipartAlternative;
use TCCL\Email\MultipartMixed;
use TCCL\Email\PlainTextGenerator;

$html = new HTMLGenerator;
$html->setContent(file_get_contents('test.html'));
$html->addModifier('*',[
    'styles' => 'max-width: 650px;font-family: sans-serif;',
    'exclude' => array_fill_keys(['html','center'],true),
]);
$html->addModifier('body',[
    'styles' => 'background-color: #f7f7f7',
]);

$plain = new PlainTextGenerator;
$plain->setContent('Use the telephone, Luke.');

$attach = new Attachment('./files/map.pdf','TheMap.pdf');

$mixed = new MultipartMixed;
$alt = new MultipartAlternative;
$mixed->addPart($alt);
$alt->addPart($plain); // Alt should proceed html (for some reason...)
$alt->addPart($html);
$mixed->addPart($attach);

$mailer = new Mailer($mixed);
$mailer->send(
    'Test <sender@example.com>',
    'recipient@example.com',
    'A test mail for testing purposes'
);

Embedding an inline image

<?php

use TCCL\Email\HTMLGenerator;
use TCCL\Email\InlineImage;
use TCCL\Email\Mailer;
use TCCL\Email\MultipartRelated;

spl_autoload_register(function($class){
    $prefix = 'TCCL\Email\\';
    if (substr($class,0,strlen($prefix)) == $prefix) {
        $class = substr($class,strlen($prefix));
        $candidate = "../lib/$class.php";
        if (is_file($candidate)) {
            include $candidate;
        }
    }
});

$htmlRaw = <<<END
<p>This is an inline image test.</p>
<p>The following image is embedded in the email.</p>
<img src="my-image.png">
END;

// Create HTML email body.
$html = new HTMLGenerator;
$html->setContent($htmlRaw);

$inline = new InlineImage('./my-image.png');
InlineImage::linkTo($html);

$related = new MultipartRelated;
$related->addPart($html);
$related->addPart($inline);

$mailer = new Mailer($related);
$mailer->sendMail(
    '😀 A test mail for testing purposes',
    Mailer::encodeEmail('Smith, John <john.smith@example.com>'),
    'jill.smith@example.com',
    'Smith, Jill'
);

tccl/email 适用场景与选型建议

tccl/email 是一款 基于 PHP 开发的 Composer 扩展包,目前已累计 9 次下载、GitHub Stars 达 0, 最近一次更新时间为 2018 年 02 月 16 日, 在 PHP 生态内属于活跃度较高的组件。

我们在过去多个企业项目中使用过 tccl/email 或与其功能相近的方案,如果你在选型或落地过程中遇到问题,例如 版本兼容、二次改造、私有化封装、与内部系统对接、生产 BUG 排查,欢迎联系我们协助评估。

围绕 tccl/email 我们能提供哪些服务?
定制开发 / 二次开发

基于 tccl/email 在你已有业务上做功能扩展、字段裁剪、UI 适配、与内部账号 / 权限 / 日志系统的深度对接。

BUG 修复 & 性能优化

线上偶发问题、内存泄漏、慢查询、并发异常等排查修复;针对高流量场景做缓存、队列、索引层面的调优。

项目外包 & 长期维护

承接完整的项目从需求 → 设计 → 开发 → 上线 → 长期运维;也可按月提供技术保姆服务。

yvsm@zunyunkeji.com QQ:316430983 微信:yvsm316 西安尊云信息科技 · 专注 PHP / Go / 分布式系统研发

统计信息

  • 总下载量: 9
  • 月度下载量: 0
  • 日度下载量: 0
  • 收藏数: 0
  • 点击次数: 10
  • 依赖项目数: 0
  • 推荐数: 0

GitHub 信息

  • Stars: 0
  • Watchers: 1
  • Forks: 0
  • 开发语言: PHP

其他信息

  • 授权协议: MIT
  • 更新时间: 2018-02-16