[PHP-users 12185] Re: メール送信時の改行コードに関して
UNO Shintaro
php-users@php.gr.jp
Thu, 12 Dec 2002 00:32:44 +0900
>Redhat7.2
>Apache1.3.27
>PHP4.2.4(国際版)
>
>という環境で簡単なWebメールフォームで"mb_send_mail()"関数にて
>メール送信したときに一部のメーラーで一行おきに改行が加わって
>しまっているのです。
フォームから来るデータは、改行コードが「\r\n」「\r」「\n」の
いずれになるかが予測できません。(大抵は「\r\n」のようです)
メッセージデータを mail() や mb_send_mail() に渡す前に、
改行コードを次のような感じで「\n」に揃えてやればいいと思います。
$msg = str_replace("\r", "\n", str_replace("\r\n", "\n", $msg));
#[7594]の方法は、「\n」ではなくて「\r」に揃えるという主旨なので、
#山本さんのおっしゃるとおり、メーラによっては改行が抜けて表示
#されるような気がします。
--
UNO Shintaro, 宇野 信太郎
mailto:uno@venus.dti.ne.jp
http://www.venus.dti.ne.jp/~uno/