- ベストアンサー
mail()について。Outlookで文字化けする
phpの組み込み関数mail()を使用して自動メール送信機能を作っております。 Yahoo!メールでは正常に受信出来るのですが、Outlook(Express)では文字化けしてしまいます。 出来るだけ万能に受信させたいのですが、どのように対処すれば良いのでしょうか? ちなみに、以下、現状のソースを簡略化したものです。 ----------------------------------------------------------- $mail_to = "mail@test.com"; $message = "テストです。\nメールを送ります。"; $headers = 'From: test' . "\r\n" . 'X-Mailer: PHP/' . phpversion(); mail($mail_to, "タイトル", $message, $headers); ------------------------------------------------------------- どなたか解決策をご存知でしたら、御教授宜しくお願いいたします。
- みんなの回答 (2)
- 専門家の回答
質問者が選んだベストアンサー
メール送信時のマルチバイト文字(日本語など)の必要な扱いが 足りないからです。 例 ・タイトルなどヘッダー部は、JISコードにしてMIME変換する ・本文中の日本語は、JISコードに変換してから送信する など 下記ページを参考にしてみては如何でしょう http://techblog.ecstudio.jp/tech-tips/mail-japanese-basics.html
その他の回答 (1)
私はPHP全くわからないのですが、文字コードを設定してないからだと思います。 さしあたって、$headersのなかに「Content-Type: text/plain;charset="ISO-2022-JP"」と追加してみてください。
お礼
文字コードの変換に大変参考になりました! ありがとうございます。