PHP Mailerをダウンロードします
https://github.com/PHPMailer/PHPMailer
SMTPサーバのアドレスはphp.iniに設定してあれば取得されるので設定不要です。
送信用のPHPファイルをUTF-8で作成します。
mb_internal_encoding を UTF-8 とします(指定しないと文字化けする場合があります)
PHPMailerAutoload.php を呼び込みます。
mail.php
mb_internal_encoding("UTF-8");
require 'PHPMailer/PHPMailerAutoload.php';
送信者・宛先を指定します。
$mail = new PHPMailer();
// 送信者
$mail->From = 'hogehoge@hogehoge.com';
$mail->FromName = 'Hoge Hoge';
// 宛先
$mail->addAddress('hogehoge@hogehoge.com', 'Hoge Hoge');
日本語のサブジェクトは文字化けするのでMIMEエンコーディングします(デフォルトはBASE64)
// 日本語のサブジェクト
$mail->Subject = mb_encode_mimeheader('日本語サブジェクト');
本文も文字化けしてしまうので文字コードを指定します。
UTF-8の場合はクライアントによっては文字化けする可能性があります。
// UTF-8 の場合
$mail->CharSet = 'UTF-8';
$mail->Body = '日本語本文';
// ISO-2022-JP の場合
$mail->Encoding = "7bit";
$mail->CharSet = 'ISO-2022-JP';
$mail->Body = mb_convert_encoding('日本語本文', "JIS", "UTF-8");
HTMLメールの場合はAltBodyも指定します。
// HTMLメールの場合
$mail->isHTML(true);
$mail->Body = '<html>日本語本文</html>';
$mail->AltBody = '日本語本文';
// テキストメールの場合
$mail->isHTML(false);
$mail->Body = '日本語本文';
添付ファイルの追加
$mail->addAttachment('testfile.pdf');
メール送信!
$mail->send()