Zend_Mail+Smarty でメール送信

6月 9th, 2008 by Fou Leave a reply »

Zend Frameworkを使ったアプリケーションでSmartyテンプレートを使ったメール送信プログラム
よく使いそうなのでメモメモ。。

ざっと簡単に書くとこんな感じ。

$smarty = new Smarty();
$smarty->template_dir = 'テンプレートフォルダのパス';
$smarty->compile_dir = 'テンプレート一時フォルダのパス';
$smarty->assign('post',$post); //メールテンプレートにassignする
 
$send[subject]  = 'メールタイトル';
$send[body]     = $smarty->fetch('テンプレートファイル');
$send[fromEmail]= '送り主アドレス';
$send[fromName] = '送り主名';
$send[toEmail]  = '送信先アドレス';
$send[toName]  = '送信先名';
 
mb_convert_variables('ISO-2022-JP','EUC-JP',$send);
$send[fromName] = '=?iso-2022-jp?B?'.base64_encode($send[fromName]).'?=';
 
try{
    $Mail = new Zend_Mail('ISO-2022-JP');//送信用
    $Mail->setFrom($send[fromEmail],$send[fromName])
           ->addTo($send[toEmail],$send[toName])
           ->setSubject($send[subject])
           ->setBodyText($send[body])
           ->send();
}
//エラー処理
catch (Zend_Exception $e) {
 
}
Advertisement

コメントを残す