多言語対応サイト時のphp.ini

必要になりそうなので、前もって調べてみた。

;mb_send_mailのメール文字コードで使用。mb_send_mail使わずにメールの文字コードをUTF8で調整するべき
mbstring.language = neutral
;以下にして、mb_send_mailを使用すると多分、JISの文字コードでメールが送信される(未確認)。
;mbstring.language = Japanese
;HTTPレスポンス ヘッダー 'Content-Type: text/html; charset:utf-8'
default_charset UTF-8
;mbstringのデフォルトエンコード(未指定時にはUTF-8)
mbstring.internal_encoding    = UTF-8
;入力文字コードの検出
php_value mbstring.http_input  = UTF-8,auto
;入力エンコードの変換
mbstring.encoding_translation = On
;出力文字コード
php_value mbstring.http_output = UTF-8

UTF-8一択ですね。

#########
でも、メールが化ける。。。
mb_send_mailを使ってるプログラム上に

mb_language( 'ja' );
mb_send_mail( $to, $subject, mb_convert_encoding( $body, "JIS" ), $header );

おぅ。。。
見なかったふりして削除。

//mb_language( 'ja' );
mb_send_mail( $to, $subject, $body, $header );

プロダクトにする時は、mb_send_mailを使わないようにするするのが吉。