※ ChatGPTを利用し、要約された質問です(原文:PHPの文字コード (php.iniの設定))
PHPの文字コード設定
php.iniを以下のように設定した場合について教えてください。
(PHPの参考書に載っていたWindows環境での設定例です)
output_buffering = On
output_handler = mb_output_handler
default_charset = Shift_JIS
extension=php_mbstring.dll
mbstring.language = Japanese
mbstring.internal_encoding = EUC-JP
mbstring.http_input = auto
mbstring.http_output = SJIS
mbstring.encoding_translation = On
mbstring.detect_order = auto
mbstring.substitute_character = auto
mbstring.script_encoding = EUC-JP
1.
この設定は「PHPの記述されたファイルはEUC-JPで、
ブラウザに表示される時点でShift-JISに変換される」
ということですか?
2.
PHPの参考書(PHP5対応)に、
「PHPアプリケーションを構築する場合、文字コードを
Shift-JISにすると、PHPのバージョンやphp.iniの設定に
よっては文字化けの原因になることがあるので、
Windows環境でもEUC-JPで保存することを強くお勧めする」
というようなことが書かれていました。
素人考えで、すべて同じ文字コード(EUC-JP)のほうが
楽なのではないかと思ったのですが、上記のように
設定するのはどういう理由からでしょうか?
3.
CSSファイルやテンプレートファイル(Smarty)の
文字コードは、Shift-JISとEUC-JPのどちらで保存
すればいいのですか?
4.
metaタグのcharsetはShift-JISであっていますか?
お礼
丁寧なご説明ありがとうございます。 文字コードについては分からないことが多くて・・。 助かりました。 その他でご回答いただいたことに関しては 今の私の知識では理解できませんでしたが、 後々参考にさせていただきたいと思います。 ありがとうございました。