PHPスクリプトでメールの問い合わせ画面を作って日本語でメール転送してMUAで受けた場合文字化けが発生する。
これは、php.iniの設定とPHPのコーディングで回避できる。
1.php.iniを変更する
# cd /usr/local/lib
# vi php.ini
省略
[mbstring]
;mbstring.internal_encoding = EUC-JP
;mbstring.http_input = auto
mbstring.http_output = SJIS ← コメントアウトする(コメントを外す)
;mbstring.detect_order = auto
;mbstring.substitute_character = none;
省略
2.実際のPHPスクリプトを訂正する
<?php
省略
mb_language(Japanese); ← 言語は日本語を使う
mb_internal_encoding(‘SJIS’); ← エンコード方式をSJISにする
省略
mb_send_mail(引数); ← OUTPUTにmb_send_mail関数を使う
省略
?>
以上で日本語が化けることは無くなる。
以上
コメント