Sign inGet Started

PHP

使用 messagebird/sdk 从纯 PHP 脚本发送邮件。你需要一个 Bird API 密钥:在 Developers > API keys 中创建一个(发送第一封邮件有详细步骤),然后将其导出为 BIRD_API_KEY。

1. 安装

代码示例
composer require messagebird/sdk
mkdir -p examples

SDK 需要 PHP 8.2+,并会自动发现已安装的 PSR-18 HTTP 客户端。

2. 发送

创建 examples/quickstart-email.php,使生成示例的 autoload 路径能正确解析:

代码示例
<?php

// Send your first email. Set BIRD_API_KEY in your environment, then run:
//   php examples/quickstart-email.php

declare(strict_types=1);

require __DIR__ . '/../vendor/autoload.php';

use MessageBird\Bird;

$bird = new Bird(getenv('BIRD_API_KEY') ?: '');

$message = $bird->email->send(
    from: 'Bird <onboarding@messagebird.dev>',
    to: ['delivered@messagebird.dev'],
    subject: 'Hello from Bird',
    html: '<p>My first Bird email.</p>',
);

echo $message->getId(), ' ', $message->getStatus(), "\n";

onboarding@messagebird.dev 是 Bird 的共享引导发件人,delivered@messagebird.dev 是一个始终可送达的沙箱收件人:无需域名验证。SDK 根据密钥的 bk_us1_ / bk_eu1_ 前缀推断区域(无需配置基础 URL),并为每次调用自动生成一个 Idempotency-Key,因此重试发送是安全的。

3. 运行

代码示例
php examples/quickstart-email.php

脚本会打印消息 ID 和状态:

代码示例
em_01ky7ma8y2es1s2akzk53tmjn0 accepted

accepted 是 API 的 202:Bird 已接收消息并将异步投递。使用 $bird->email->get($message->getId()) 通过 em_ ID 查询,可以看到状态变为 delivered。

后续步骤