下記のコードを使用して、好ましくは、Sendgrid WebAPIをSMTPまたはSwiftmailerなしで使用したいと考えています。おそらく、長い文字列変数を作成せずに各引用文をエスケープして各変数をエコーする必要なく、動的Webページ全体を 'html' $ params配列に渡すことは可能でしょうか?それぞれの電子メールは大きく異なるので、Sendgridのテンプレート/ mailmergeオプションは私のためには機能しません。ありがとう!Sendgrid Web APIを使用して動的PHP HTMLを送信
は、ここで簡単なHTMLの例です(私の持っているより多くの動的コンテンツ):
<html>
<head></head>
<body>
<p>Hi I'm <?php echo $name; ?>!<br>
<span style="color: #999999; font-size: 11px;">How are you?</span><br>
</p>
</body>
</html>
$url = 'http://sendgrid.com/';
$user = 'USERNAME';
$pass = 'PASSWORD';
$params = array(
'api_user' => $user,
'api_key' => $pass,
'to' => '[email protected]',
'subject' => 'testing from curl',
'html' => 'testing body',
'text' => 'testing body',
'from' => '[email protected]',
);
$request = $url.'api/mail.send.json';
// Generate curl request
$session = curl_init($request);
// Tell curl to use HTTP POST
curl_setopt ($session, CURLOPT_POST, true);
// Tell curl that this is the body of the POST
curl_setopt ($session, CURLOPT_POSTFIELDS, $params);
// Tell curl not to return headers, but do return the response
curl_setopt($session, CURLOPT_HEADER, false);
curl_setopt($session, CURLOPT_RETURNTRANSFER, true);
// obtain response
$response = curl_exec($session);
curl_close($session);
// print everything out
print_r($response);
SMTPを使用すると何が問題になるのですか? – Borealid
本当に間違っていることはありません... Web APIのメソッドは、他のライブラリを必要とせずにとてもシンプルに見えます。 – Jeff