ゼロと無限の間に

フリーでオープンソースなJavaScriptとかPHPとか。

ユーザ用ツール

サイト用ツール


php-tool-box:mail-man

差分

このページの2つのバージョン間の差分を表示します。

この比較画面へのリンク

両方とも前のリビジョン前のリビジョン
次のリビジョン
前のリビジョン
php-tool-box:mail-man [2008/02/07 23:50] dgbadminphp-tool-box:mail-man [2010/08/14 23:34] (現在) – 0.2.0 メールの生データからでも解析可能にした dgbadmin
行 1: 行 1:
 ====== PHPでシンプルなメールの送信&受信したメールの解析 - MailMan.php ====== ====== PHPでシンプルなメールの送信&受信したメールの解析 - MailMan.php ======
 +
 +{{php-tool-box:email-3.png|}}
  
 送信はmb_send_mail()のラッパーなので、[[http://jp2.php.net/manual/ja/ref.mbstring.php|mb_send_mail()用の設定]](mbstring.language = Japanese とmbstring.internal_encoding)がされていないと文字化けする。 送信はmb_send_mail()のラッパーなので、[[http://jp2.php.net/manual/ja/ref.mbstring.php|mb_send_mail()用の設定]](mbstring.language = Japanese とmbstring.internal_encoding)がされていないと文字化けする。
行 6: 行 8:
  
 Windowsでのみ動作確認した。 Windowsでのみ動作確認した。
 +
  
 ===== ちょっとした機能 ===== ===== ちょっとした機能 =====
-  * 宛先や送信元のメールアドレスに、表示名を付けられる "山田太郎 <taro.yamada@example.com>"みたいな感じに。)+  * 宛先や送信元のメールアドレスに、下記のような表示名を付けられる <code>"山田太郎 <taro.yamada@example.com>"</code>
   * 解析したメールに対して、返信を返せる   * 解析したメールに対して、返信を返せる
  
行 14: 行 17:
 <code php> <code php>
 <?php <?php
 +/**
 +  @version 0.2.0
 + */
 class MailMan { class MailMan {
     const CC = 'Cc';     const CC = 'Cc';
行 133: 行 139:
        
     /**     /**
-        メールのファイルからデータを取り出す+        メールのファイルからデータを取り出す($pathか$dataのどちらかのみ渡すこと)
         @param    string    $path    メールのファイルパス         @param    string    $path    メールのファイルパス
 +        @param    string    $data    メールの生データ
         @return    MailMan    取り出したメール         @return    MailMan    取り出したメール
      */      */
-    public static function file2mail($path) { +    public static function file2mail($path, $data = "") { 
-        $decoded = MailMan::decode($path);+        $decoded = MailMan::decode($path, $data);
                
         //基本情報を取り出す         //基本情報を取り出す
行 160: 行 167:
        
     /**     /**
-        メールを分解する+        メールを分解する($pathか$dataのどちらかのみ渡すこと)
         @param    string    $path    メールのファイルパス         @param    string    $path    メールのファイルパス
 +        @param    string    $data    メールの生データ
         @return    object    分解したメールデータ         @return    object    分解したメールデータ
      */      */
-    public static function decode($path) {+    public static function decode($path, $data = "") {
         require_once('Mail/mimeDecode.php');    //要PEAR         require_once('Mail/mimeDecode.php');    //要PEAR
-        +         
-        $decoder = new Mail_mimeDecode(file_get_contents($path));+        if (!$data) { 
 +            $data = file_get_contents($path); 
 +        } 
 +         
 +        $decoder = new Mail_mimeDecode($data);
         $params['decode_headers'] = true;         $params['decode_headers'] = true;
         $params['include_bodies'] = true;         $params['include_bodies'] = true;
php-tool-box/mail-man.1202395826.txt.gz · 最終更新: 2008/02/07 23:50 by dgbadmin

Donate Powered by PHP Valid HTML5 Valid CSS Driven by DokuWiki