[PHP-users 1104] メールのSubjectに日本語

Tatsuro Nakagawa php-users@php.gr.jp
Wed, 08 Aug 2001 11:37:42 +0900


こんにちは。
以前にもこういった話題が出ていたのですが、結局発見できませんでしたので投
稿させていただきます。

下記に使用した関数と結果を記載します。
どなたか対処法をご存知の方、ご指南ください。

よろしくお願いします。


function sendMail ( $from, $to, $subject, $body) {

    ### サブジェクトを jis にして、MIME エンコード
    $subject = i18n_mime_header_encode( i18n_convert($subject, "JIS") );

    ### 本文を jis に
    $body = i18n_convert($body, "JIS");

    ### メールの送信
    $mp = popen("/usr/sbin/sendmail -f $from $to", "w");

    ########################## メールの組み上げ
    ### 全体のヘッダ
    fputs($mp, "MIME-Version: 1.0\n");
    fputs($mp, "From: $from\n");
    fputs($mp, "To: $to\n");
    fputs($mp, "Subject: $subject\n");

    ### メール本文のパート
    fputs($mp, "Content-Type: text/plain; charset=\"ISO-2022-JP\"\n");
    fputs($mp, "\n");
    fputs($mp, "$body\n");

    ### マルチパートのおわり。
    pclose($mp);
}


以前、どこかで見かけたメール送信用の関数を使用させていただいたのですが、
どうしてもSubjectが途中から文字化けしてしまいます。

設定したSubject/
実際に送られてくるSubject
1.OK
あいうえおかきくけこさしすせそ
あいうえおかきくけこさしすせそ

2.NG
あいうえおかきくけこさしすせそたちつてとなにぬねのはひふへほ
あいうえおかきくけこさしすせそたちつてH$J$K$L$M$N$O$R$U$X$[


環境:
TurboLinux6.2Server
PHP4.06
sendmail8.9.3