PHPで関数mb_send_mailを利用してメールを送信する場合に、メール本文に1つの改行が2つと解釈されてメールが送信されるケースがあります。
例えば、以下のような文章をフォームなどで入力します。
こんにちわ こんばんわ おはようございます
この内容をmb_send_mailにセットしてメールを送信し、受信側で確認すると以下のように表示されることがあります。
こんにちわ こんばんわ おはようございます
改行コードとサーバ環境が絡んだ問題と思われますが。
これまではこのプログラムで問題なかったのに。サーバ環境はどうなってるんだろうか。と深く探る前に。
改行コードは、UNIXは『n』、Windowsは『rn』、Macは『r』となっています。ここで、Macでサーバ運用などほとんどないと思いますので、こういう困った場合にはとりあえず『r』を削除すれば解決することが多いです。
$mail_honbun = ereg_replace("r","",$mail_honbun); mb_send_mail($mailto,$subject,$mail_honbun,$mailfrom);
雑な説明ですが、サーバ環境を調査するコストに悩む場合は、上記を試してみる価値はあると思います。
コメントする