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.phpapp/config/email.php にコピーします。
コピーした app/config/email.php を以下のように修正します。

 'wordwrap' = false,

コメント

タイトルとURLをコピーしました