添付ファイル付きのメール送信処理実装メモ
参考サイト(というかそのまんま)
http://techblog.ecstudio.jp/tech-tips/mail-japanese-advance.html
1. 以下の二つをダウンロードする
2. PHPMailerを解凍する
$ tar zxvf PHPMailer_5.2.1.tgz
3. フォルダ名をリネーム
$ mv PHPMailer_5.2.1 phpmailer
4. ライブラリを配置
src
|- phpmailer
|- jphpmailer.php
|- mail.php ←コレ作る
ソースは以下
<?php
require_once './jphpmailer.php';
class Mail {
/**
* 添付ファイル付きでメール送信
* 本文の文字コードはEUC-JPで
* @param mail_address 送信先メールアドレス
* @param subject 件名
* @param body 本文テキストのパス
* @param attachfile 添付ファイルのパス
*/
public static function sendMail($mail_address, $subject, $body, $attachfile = null) {
// 言語設定
mb_language("japanese");
// 内部エンコーディング
mb_internal_encoding("EUC-JP");
// インスタンス生成
$mail = new JPHPMailer();
// 宛先を設定
$mail->addTo($mail_address);
// 差出人と差出人名を設定
$mail->setFrom('mirsa@redeyes.co.jp' , 'mirsa');
// 件名を設定
$mail->setSubject($subject);
// 本文を設定
if (file_exists($body)) {
$mail->setBody(file_get_contents($body));
}
//添付ファイル追加
if (isset($attachfile) && file_exists($attachfile)) {
$mail->addAttachment($attachfile);
}
// メール送信
if (!$mail->send()){
// エラー処理
throw new Exception($mail->getErrorMessage());
}
}
}
?>