FuelPHPでメール送信する

最終更新日時:2017-03-10 17:32:13
FuelPHP

FuelPHP でメール送信する機能として、Email というそのまんまの名前のクラスがあり、これを使うと簡単にメール送信を実装することが出来ます。
以下、使用例です。
指定された引数に従ってメールを送る関数を定義しています。


 public static function send_mail($args) {
    if (!$args['from'] || !$args['to'] || !$args['subject'] || !$args['body']) return false;
        $email = \Email::forge();
        $email->from($args['from']);
        $email->to($args['to']);
        $email->subject($args['subject']);
        $email->body($args['body']);
        if (isset($args['bcc'])) $email->bcc($args['bcc']);
 
        try {
            $email->send();
        } catch(\EmailValidationFailedException $e) {
            Log::error($e);
        } catch(\EmailSendingFailedException $e) {
            Log::error($e);
        }
    }
 }



自動改行処理を止める


FuelPHP の Email クラスを使うと、メール本文に対して 76 文字で自動的に改行するような非常にお節介なことをしてくれます(-_-#
なぜこんなアホみたいな機能がデフォルトでオンになっているのか理解不能ですが、幸い config をオーバーライドすることで無効に出来ますので、しっかり無効にしてつまらないトラブルにあわないようにしておきましょう(^^)/

まず、packages/email/config/email.php を app/config/email.php にコピーします。
コピーした app/config/email.php を以下のように修正します。

 'wordwrap' = false,



お問い合わせは 掲示板 にて。