tlamedia / sparkpost-bundle
SparkPostBundle 将 SparkPost PHP 库与 Symfony 集成,允许你在 Symfony 项目中与 Sparkpost API 交互。
1.2.1
2023-02-07 10:55 UTC
Requires
- php: ^7.1 || ^8.0
- guzzlehttp/guzzle: ^6.3
- php-http/guzzle6-adapter: ^1.1
- sparkpost/sparkpost: ^2.1
- symfony/config: ^3.4 || ^4.4 || ^5.4
- symfony/dependency-injection: ^3.4.26 || ^4.4 || ^5.4
- symfony/http-kernel: ^3.4 || ^4.4.50 || ^5.4
Requires (Dev)
- symfony/phpunit-bridge: ^4.4 || ^5.2
README
SparkPostBundle
将 SparkPost PHP 库与 Symfony 集成。
安装
获取捆绑包
composer require tlamedia/sparkpost-bundle
然后在你的内核中启用它
// config/bundles.php return [ //... Tla\SparkPostBundle\TlaSparkPostBundle::class => ['all' => true], //... ];
配置
配置要使用的 API 密钥
# config/packages/tla_spark_post.yml tla_spark_post: api_key: 'YOUR_API_KEY' # Replace with your own
用法
该捆绑包注册了服务 tla_spark_post.api_client
,允许你使用 SparkPost API。
从控制器发送邮件
class SomeController extends Controller { public function sendAction() { $sparky = $this->getContainer()->get('tla_spark_post.api_client'); $promise = $sparky->transmissions->post([ 'content' => [ 'from' => [ 'name' => 'YOUR_NAME', 'email' => 'YOUR_EMAIL', ], 'subject' => 'My first mail using SparkPostBundle', 'html' => '<html><body><h1>Congratulations, {{name}}!</h1><p>You just sent your first mail!</p></body></html>', 'text' => 'Congratulations, {{name}}!! You just sent your first mail!', ], 'substitution_data' => ['name' => 'YOUR_FIRST_NAME'], 'recipients' => [ [ 'address' => [ 'name' => 'YOUR_NAME', 'email' => 'YOUR_EMAIL', ], ], ], 'cc' => [ [ 'address' => [ 'name' => 'ANOTHER_NAME', 'email' => 'ANOTHER_EMAIL', ], ], ], 'bcc' => [ [ 'address' => [ 'name' => 'AND_ANOTHER_NAME', 'email' => 'AND_ANOTHER_EMAIL', ], ], ], ]); $promise = $sparky->transmissions->get(); try { $promise->wait(); } catch (\Throwable $t) { echo $t->getCode()."\n"; echo $t->getMessage()."\n"; } } }
文档
有关如何访问每个 API 方法的详细文档,请参阅该捆绑包所集成的包的文档: Sparkpost API 库
许可证
此包可在 MIT 许可证 下使用。