2022年8月、ホームページを全面リニューアルしました! 情報を分かりやすくお伝えできるサイト作りを目指してまいります。

PHPスクリプトでメール通知をした場合に文字化けを回避するには!

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関数を使う

省略
?>

以上で日本語が化けることは無くなる。

以上

コメント