#freeze
#setlinebreak(on)
* PEAR :: Mail メール送信のスタンダード [#cc8b8a14]

[[マルチパートメール作成 PEAR :: Mail_mime>PEAR/Mail_Mime]]
[[メール分解 PEAR :: Mail_MimeDecode>PEAR/Mail/Mail_MimeDecode]]

** 概要 [#ad96ea15]
#htmlinsert(googleAdsense.html)
#ref(http://dozo.rgr.jp/img/img20_file.png,right,nolink,around,PHP::PEAR)

結構楽です。

(ノ・・)ン。。。。。。(((●コロコロッ

PHPには標準でメールを送信する関数が装備されています。
気軽にメール送信する分にはかまわないのですが、
実際はほとんど直接使うことはありません。
それにlinuxだとサーバーが別になってたら使えません。
そこでSMTPにつないでベラベラしゃべるのですが、
自前で実装はやっぱり面倒です。

そこで[[PEAR :: Mail>http://pear.php.net/package/Mail]]の登場です。
windows, Linux関係なくオプション設定だけでSMTP接続をやってくれます。

ソースはこんな感じ
 <?php
  include('Mail.php');
 
  $recipients = 'dozo@rgr.jp';
 
  $headers['From']    = 'dozo@matrix.jp';
  $headers['To']      = 'dozo@rgr.jp';
  $headers['Subject'] = 'subject';
 
  $body = 'Test message';
  
  // SMTPサーバ
  $mail_options = array(
      'host'      => 'dozo.rgr.jp', // ホスト名
      'port'      => 25,            // ポート番号
      'auth'      => true,          // 認証必要?
      'username'  => "dozo",        // ユーザー名
      'password'  => "pass",        // パスワード
      'localhost' => 'localhost',   // ?
  );
 
  // Create the mail object using the Mail::factory method
  $mail_object =& Mail::factory("SMTP",$mail_options);  // SMTP送信準備
 
  $mail_object->send($recipients, $headers, $body);
 ?>

でもこのままだと日本語使うの面倒。
個別にJISコード変換するのは大変。
なので、通常は[[PEAR :: Mail_mimeDecode>PEAR/Mail/Mail_MimeDecode]]と併せて使います。
-文字化けするのは、mbstring.internal_encodingの設定では? -- [[takuya]] &new{2006-06-08 05:10:38 (木)};
-internal_encodingはソースコードを何で書いているかというのと、multibyte関数の基本設定にしかならないので、文字化けの解消とはあまり関係ないと思います。 -- [[dozo]] &new{2006-06-08 09:24:16 (木)};
-日本語扱う為の処理が足りないような・・・ -- [[noah]] &new{2006-06-29 12:22:54 (木)};

#comment


トップ   新規 一覧 単語検索 最終更新   ヘルプ   最終更新のRSS
Third Project
証券会社ランキング比較