Skip to content →

SendGridではメールがいつ開封されたかまで分析できる![ PHPでの使い方編 ]

前回紹介したクラウドメール配信サービスのSendGridを使って実際にメールを送信する方法をご紹介します。

メール運用のストレスから開放

SendGridにすれば、メール運用のストレスから開放されるだけでなく、メール到達率も上がり、開封数や届かなかった数まで統計がとれて分析もできます。

activitySendGridのコンパネです。Webサービスからメールを送信して、自動でメールが配送された日時だけでなく、開封された時間までわかります。すごい。

sendgrid
全体としての配信・開封・未到達の数もとれます。

数百件のメール送信送ってみたら、SendGridに変えたら1秒で配信された!一瞬すぎて、え?送れてない?と思うほどのスピード。すごすぎ。

それでは、PHPでの使い方をご紹介。

SendGrid公式ライブラリを読み込む

SendGrid公式ライブラリはこちら。composerを使って、SendGridのバージョン4を指定。最新は数日前にバージョン5になりましたが、こちらを使うとエラーがでたため、4にしています。

composerのインストール等についてはこちらをどうぞ。
参考)composerを使ってPHPのライブラリをもっとかんたんに管理する

メールを送信する

//composerライブラリの読み込み
//パスは環境によって適宜変更してください
require_once("vendor/autoload.php");

//SendGrid API
//SendGridコンパネよりAPI Keyを発行できます
$sendgrid = new SendGrid("XXXXXXXXX");
$email    = new SendGrid\Email();

//複数の宛先に一気に送信可能 最大10,000アドレスまでいけちゃいます
$tos = array('aaaaa@aaaa.jp','bbbbb@bbbb.jp');

$email->setSmtpapiTos($tos) //複数の宛先に送る場合はこちら
      // ->addTo("aaaaa@aaaa.jp") //単一の宛先はこちらだけを指定
      ->setFrom("noreply@aaaa.net")
      ->setSubject("「%fullname%」さん こんにちわ")
      ->addSubstitution("%fullname%", array("田中", "佐藤"))
      ->setText('Hello World!')
      ->addAttachment('./img/aaa.png', 'aaa.png') //添付ファイル 最初が添付ファイルパス 2つ目はメールで表示するファイル名
      ->setHtml("<b>HTML</b>メールもかんたん"); //HTMLメール

$sendgrid->send($email);

これだけ。かんたんですね。これからのWebサービスにSendGridがセットでおすすめ。

SendGrid

[sc name=”webserivece”][sc name=”engeneer”]

SHARE

PROFILE

入江 慎吾
イリテク株式会社代表取締役 / メンターマッチングサービスMENTAを運営(月間流通額700万突破)/ 累計20個以上のWEBサービスやアプリを開発 / CAMPFIREとコミュニティツールVoyageを共同開発中 / 「自分のサービスで生きていく」をコンセプトに個人開発オンラインサロン「入江開発室」を運営(詳しいプロフィール)

SPONSER

Published in 開発奮闘記