※ ChatGPTを利用し、要約された質問です(原文:PHPの文字コードについてお願いします。)
このQ&Aのポイント
PHPの文字コードについて質問させてください。Apache2、MYSQL、PHP5を使用して勉強しているものですが、文字コードについてわからないことがあります。
文字コードを変更する場合の設定方法や、php.iniの設定の意味について教えていただけると助かります。
具体的な質問として、1. UTF-8に変える場合のApache2の設定について、2. php.iniの設定の意味について、3. SHIFT-JISで書いたPHPファイルの保存方法について、4. PHPとMySQLの文字コードの統一について、5. UTF-8に変える場合のphp.iniの設定部分について、お教えください。よろしくお願いいたします。
Apache2、MYSQL、PHP5を使用して勉強しているものですが、文字コードについて質問させてください。
まず、参考書を読みながらphp.iniをこの用に設定しました。
output_handler =mb_output_handler
default_charset = "Shift_Jis"
extension_dir = "c:\php\ext\"
extension=php_mbstring.dll
extension=php_mysql.dll
mbstring.language = Japanese
mbstring.internal_encoding = EUC-JP
mbstring.http_input = auto
mbstring.http_output = EUC-JP
mbstring.encoding_translation = On
mbstring.detect_order = auto
mbstring.substitute_character = none;
MySQLの文字コードはウィザードでUJISに設定して勉強しています。
Apache2の設定は本で支持が無かったのでとくに設定はしていません。
しかしこれでは文字化けが起こったりしてしまい、Googleなどで調べたらUTF-8で統一するのが良いと書かれていたのですが、どのように変更すればわからないです。私の購入した本では「mbstring.detect_order = auto」の意味などが書いて無くて、ただ丸写しの状態になってしまい設定方法が身についていません。なので今回の質問で、文字コードの設定を覚えておきたいのです。
1.UTF-8などの文字コードに変える場合は、Apache2の設定を変える必要があるのでしょうか。
2.上記したphp.iniの設定はどのような意味があるのでしょうか?SHIFT-JISでPHPを書くということでしょうか?
できれば各自の良い設定方法を教えてください。
3.たとえばSHIF-JISで書いたPHPファイルを保存するときはSHIFT-JIS形式で保存するのでしょうか?
4.なぜphpはSHIFT-JISで書いているのにMySQLではUJISの文字コードを使用するのでしょうか。統一した方がいいのでは?
5.utf-8に文字コードを変える場合は、php.iniのどの部分を設定し直せばいいのでしょうか?
一つでも回答して頂けるととても嬉しいです。よろしくお願いいたします。
お礼
すべての質問に答えて頂きほんとうにありがとうございました。 とても参考になりました。文字コードは全然わからないですが、これを読んで勉強したいと思います。