jisMail extends sfMail

Posted by ゆのじ on 6月 3rd, 2007

日本語(JIS)のメールを送信するためのsfMail継承クラス。各所に必要な日本語関数を詰め込んだだけだが、constructorを拡張するくらいなら別関数を1つ定義してそちらに書いた方がスマートだろう。

この関数を使えば、symfonyのチュートリアル通り、templateとして本文を記述してメールを配信することが可能になる。なお、本文はUTF-8で書くこと。

利用については一切許可は必要ない。商用利用だろうと何だろうとご自由にどうぞ。中身を書き換えて公開してもかまわないし、中身にcopyrightも書いていないので好きにしていい。ただし、本クラスを用いて何が起きても私は一切責任を負わないし、私の名前を使ってこのクラスを使うのも禁止。そのことに合意の上お使いいただければ幸い。

class jisMail extends sfMail{
  public function __construct(){
    parent::__construct();
    parent::setCharset(‘iso-2022-jp’);
    parent::setEncoding(’7bit’);
    mb_language(“Ja”);
    mb_internal_encoding(‘UTF-8′);
  }

  public function setBody($body)
  {
    parent::setBody(mb_convert_encoding($body, ‘JIS’, ‘UTF-8′));
  }

  public function setSubject($title)
  {
    parent::setSubject(mb_convert_encoding($title, ‘JIS’, ‘UTF-8′));
  }

  public function setFrom($mail, $from = null)
  {
    parent::setFrom($mail,
    mb_encode_mimeheader(
    mb_convert_encoding($from,’JIS’,'UTF-8′),’JIS’,'B’));
  }
}
?>