sendgrid/sendgrid

此库允许您通过PHP轻松快速地通过Twilio SendGrid发送电子邮件。


README

SendGrid Logo

BuildStatus Packagist Downloads MIT licensed Twitter Follow GitHub contributors Open Source Helpers

新功能

  • 使用 Twilio 发送短信。

此库允许您通过PHP轻松快速地使用Twilio SendGrid Web API v3。

此库的7.X.X版本为所有Twilio SendGrid Web API v3端点提供全面支持,包括新的v3 /mail/send端点。

如果您需要使用SendGrid的支持,请检查Twilio SendGrid支持帮助中心

请浏览此README的其余部分以获取更多详细信息。

感谢您的持续支持,谢谢!

目录

安装

先决条件

  • PHP版本7.3,7.4,8.0或8.1
  • Twilio SendGrid服务,从免费级别开始,前30天发送最多40,000封电子邮件,然后每天免费发送100封电子邮件,或查看我们的定价
  • 对于短信,您需要一个免费的Twilio账户

设置环境变量

使用您的SENDGRID_API_KEY更新开发环境,例如

  1. 将示例env文件复制到一个名为.env的新文件
cp .env.sample .env
  1. 编辑.env文件以包含您的SENDGRID_API_KEY
  2. 来源.env文件
source ./.env

安装包

将Twilio SendGrid添加到您的composer.json文件。如果您不使用Composer,我们强烈推荐它。这是管理PHP应用程序中依赖关系的一种绝佳方式。

{
  "require": {
    "sendgrid/sendgrid": "~7"
  }
}

替代方案:从zip安装包

如果您不使用Composer,只需下载并安装库的最新打包版本作为zip文件

⬇︎ 下载打包库 ⬇︎

库的旧版本可以直接从GitHub下载。

依赖关系

快速入门

根据您的安装方法,从以下内容中包含适当的行到每个示例的顶部

<?php
// Uncomment the next line if you're using a dependency loader (such as Composer) (recommended)
// require 'vendor/autoload.php';

// Uncomment the next line if you're not using a dependency loader (such as Composer), replacing <PATH TO> with the path to the sendgrid-php.php file
// require_once '<PATH TO>/sendgrid-php.php';

你好,电子邮件

以下是最小需要发送电子邮件的代码。您可以在我们的USE_CASES文件中找到更多示例

$email = new \SendGrid\Mail\Mail();
$email->setFrom("test@example.com", "Example User");
$email->setSubject("Sending with Twilio SendGrid is Fun");
$email->addTo("test@example.com", "Example User");
$email->addContent("text/plain", "and easy to do anywhere, even with PHP");
$email->addContent(
    "text/html", "<strong>and easy to do anywhere, even with PHP</strong>"
);
$sendgrid = new \SendGrid(getenv('SENDGRID_API_KEY'));
try {
    $response = $sendgrid->send($email);
    print $response->statusCode() . "\n";
    print_r($response->headers());
    print $response->body() . "\n";
} catch (Exception $e) {
    echo 'Caught exception: '. $e->getMessage() ."\n";
}

SendGrid\Mail 构造函数为您创建了一个 个性化对象这里 是如何向其添加内容的示例。

通用 v3 Web API 使用(使用流畅接口)

$apiKey = getenv('SENDGRID_API_KEY');
$sg = new \SendGrid($apiKey);

try {
    $response = $sg->client->suppression()->bounces()->get();
    print $response->statusCode() . "\n";
    print_r($response->headers());
    print $response->body() . "\n";
} catch (Exception $e) {
    echo 'Caught exception: '.  $e->getMessage(). "\n";
}

通用 v3 Web API 使用(不使用流畅接口)

$apiKey = getenv('SENDGRID_API_KEY');
$sg = new \SendGrid($apiKey);

try {
    $response = $sg->client->_("suppression/bounces")->get();
    print $response->statusCode() . "\n";
    print_r($response->headers());
    print $response->body() . "\n";
} catch (Exception $e) {
    echo 'Caught exception: '.  $e->getMessage(). "\n";
}

用例

常见 API 使用案例示例,例如如何使用交易性模板发送电子邮件。

用法

公告

v7 已发布!请参阅 发布说明 了解详细信息。

此库的所有更新都记录在我们的 变更日志发布 中。

如何贡献

我们鼓励为我们的库做出贡献(您甚至可能获得一些有趣的配饰),请参阅我们的 贡献指南 了解详细信息。

快速链接

故障排除

请参阅我们的 故障排除指南 了解常见的库问题。

关于

sendgrid-php 由 Twilio SendGrid,Inc 维护和资助。sendgrid-php 的名称和标志是 Twilio SendGrid,Inc 的商标。

支持

有关产品支持,请查看 Twilio SendGrid 支持帮助中心

许可

MIT 许可证 (MIT)