プログラミング言語や環境設定を中心としたパソコン関連の技術メモです。
主にシステム開発中に調べたことをメモしています。TIPS的な位置付けで、気が向いたときにちまちま更新していきます。
PHP、PHPMailerを使って添付ファイル付きのメールを送ってみる
ちょっくらPHPのプログラムで添付ファイル付きのメールを送る必要が出てきましてね。
今回はPEARを使わないしフレームワークも使わないので、
どのやり方で実装しようかなぁ(--?というのが調べたきっかけです。

結果、PHPMailerを使うのが楽そうだとの結論になりました。
ぶっちゃけ「mail()」や「mb_send_mail()」でも出来るみたいなのですが、
便利な部品があるのでそれを使います。

それではやり方ですが、

1.PHPMailerをどこかからパクってくる
 2013/09/24現在「https://github.com/Synchro/PHPMailer」からパクれる模様

2.PHPMailerの「class.phpmailer.php」をincludeする

3.なんかコードを書く

の手順です。
多分ここを見に来ている皆さんは優秀だと思うので、
サンプルコードがあればちょちょいのちょいですよね?

と言う訳で、ちょちょいのちょい用のサンプルコードはこちらφ(--)

<?php

    //PHPMailerインクルード
    require_once(dirname(__FILE__) . '/PHPMailer/class.phpmailer.php');

    //言語設定、内部エンコーディングを指定する
    mb_language("japanese");
    mb_internal_encoding("UTF-8");

    //宛先
    $to = "to@example.com";

    //差出人
    $from = "from@example.com";

    //件名
    $subject = "件名で~す。";

    //本文
    $body="本文で~す。\n添付ファイルをくっつけま~す。\n";

    //添付ファイルパス
    $attachfile = dirname(__FILE__) . "/test01.pdf";
    $attachfile2 = dirname(__FILE__) . "/test02.pdf";


    //あれやこれやの準備
    $mail = new PHPMailer();
    $mail->CharSet = "iso-2022-jp";
    $mail->Encoding = "7bit";
    $mail->AddAddress($to);
    $mail->From = $from;
    $mail->Subject = mb_encode_mimeheader(mb_convert_encoding($subject,"JIS","UTF-8"));
    $mail->Body = mb_convert_encoding($body,"JIS","UTF-8");

    //添付ファイルをくっつける
    $mail->AddAttachment($attachfile);
    $mail->AddAttachment($attachfile2);


    //メール送信
    $mail->Send();
?>

ちなみにPHPファイルの文字コードはUTF-8にしてあります。
何か解説しようと思っていたのですが、解説の必要が無いくらいあっさり動いちゃいました(-A-)
スポンサーリンク
 
このエントリーをはてなブックマークに追加 

category:● PHP  thema:システム開発 - genre:コンピュータ  Posted by ササキマコト 

  関連記事