PHPでHTMLメールを送信する サンプルコードあり

PHP

PHPでHTMLメールを送信する サンプルコードあり

PHPでメールを送信するには、mb_send_mailとか便利な関数がありますが、HTMLメールを送りたい!という時には、若干面倒です。

そこに、HTMLのメールや、添付ファイル有りのメールもさくっと送信できる、PHPMailerという便利なライブラリがありましたので、紹介します。

下記のGithubから、PHPMailerをダウンロードします。

https://github.com/PHPMailer/PHPMailer
Githubをインストールしていない場合は、右下あたりのDownload Zipをクリックします。

解凍して、class.phpmailer.phpが必要なので、読み込みましょう。
皆さんの環境に合わせて、読み込みの場所を変更してくださいね。

 require("PHPMailer/class.phpmailer.php");

そのあと、次のように書きます。

 <?php
 //言語設定、内部エンコーディングを指定する
 require("PHPMailer/class.phpmailer.php");
 mb_language("japanese");
 mb_internal_encoding("UTF-8");
 
 $to = "hoge@onlineconsultant.jp"; //宛先
 $subject = "メールのタイトル"; //題名
 $user_name = "勇者hogehoge"; //HTMLメールの中で使うユーザーの名前
 $body_html = <<<EOD
    <div align="center" 
    style="background-color: #fdf7e7;
    background-repeat: repeat-x;
    color: #996600;
    text-align:center;">
    <img src="http://hogehoge.net/images/logo-mini.png" width="320" height="87" alt="ロゴだよん" >
     <p>$user_name様</p>
     <h1 style="font-size:larger; font-size:30px;font-weight:bold;color:#996600;">死んでしまうとはなにごとだ</h1>
 
      <p style="color:#996600;">もう一度がんばってね</p>
      
    </div>
    <hr>
  </div>
   
 EOD;
 
 $fromname = '王様'; //メールの送信者名
 $from = 'king@onlineconsultant.jp'; //メールのFromアドレス
 
 $mail = new PHPMailer();
 $mail->CharSet = "iso-2022-jp";
 $mail->Encoding = "7bit";
 $mail->AddAddress($to);
 $mail->AddBCC('secret@onlineconsultant.jp', 'Admin'); //BCCがつけれます
 $mail->From = $from;
 $mail->FromName = mb_encode_mimeheader(mb_convert_encoding($fromname,"JIS","UTF-8"));
 $mail->Subject =  mb_encode_mimeheader(mb_convert_encoding($subject,"JIS","UTF-8"));
 
 $mail->Body = mb_convert_encoding($body_html,"JIS","UTF-8");
 
 //HTMLメールが受信できない場合 
 $message_content = "おお勇者よ HTMLメールが受信できないとは情けない";
 
 $mail->AltBody = mb_convert_encoding($message_content,"JIS","UTF-8");;
 
 if (!$mail->Send()){
    	echo("メールが送信できませんでした。エラー:".$mail->ErrorInfo);
     }
 }
 ?>

ところで、PHPMailerの本家サイトは下記ですが
http://phpmailer.worxware.com/
どうやらAndy Prevostという方が糖尿病になってしまって 大変なので、寄付をしてくれ!ということが書いてあります。
Andy Prevostさんは、PHPMailerのもともとの作者なのでしょうか?
いくつかオープンソースの人気プロジェクトを手掛けたと書いてありますが…。
現在はMarcus BointonさんがPHPMailerを作っているようです。
https://github.com/Synchro
ぜひ、みなさん寄付をしてあげてください。

なお、下記のサイトさんも参考にさせて頂きました。
http://plus.vc/web/4271/
有難うございます!!

カテゴリーPHP

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です