- ベストアンサー
PHPでの文字化け
PHPの勉強をしている者です。 PHPファイルを作成し、htdocs内に保存、その後URLをブラウザに入力し アクセスしてみたところ、表示されたサイトが文字化けしていました。 インストールされているソフトはPHPのバージョンが4.3.2、Apacheは2.0.46です。 参考書を頼りにphp.iniのAddDefaultCharsetの項目をnoneに書き換え、 そのほかのディレクトリ設定の部分も参考書の通りに書き直し、ファイルの移動も行いました。 ソフトのバージョンが古いのは、参考書に合わせることで 環境設定の相違を防ぐためです。 AddDefaultCharset以外にphp.iniなどで どこか書き直す必要があるのでしょうか? どこをどうすれば、日本語が上手く表示されるのでしょうか? 宜しくお願いしますm(_ _)m
- みんなの回答 (2)
- 専門家の回答
質問者が選んだベストアンサー
サーバの設定を変えるよりも、ソース側で対応した方が簡単かと思います。 まず、文字化けする際のブラウザの文字コードを確認してみてください。 IE7であれば、「表示」→「エンコード」で何がチェックされていますか? 例えば、そこで、「エンコード」を変えてみて、正常に表示されることはありますか? 正常に表示された文字コードで、文字コード宣言をおこなってください。 例.<meta http-equiv="Content-Type" content="text/html; charset=euc-jp"> 詳しくは参考URLをご覧ください。
その他の回答 (1)
- yambejp
- ベストアンサー率51% (3827/7415)
まずは、phpファイルを書くときにエディタで 自分がどのキャラクターセットで書いているか理解するのが第一歩。 その後それにあわせてphpのファイルにheaderを指定するのが基本です header("Content-Type:text/html;charset=euc-jp"); メタタグは保険でつけておく程度で考えてください。
お礼
PHPファイル保存時にメタタグで 使用しているキャラクタセットを記述することで、 文字化けを防ぐことが出来るんですね。 初歩的なことをご丁寧に有難うございましたm(_ _)m
お礼
当方ブラウザはfirefoxを使用しております。 表示メニュー→文字エンコーディング→日本語(Shift_JIS)に 切り替えることで、上手く表示されました。 参考URLどうも有難うございます。 文字コード宣言していないと、ブラウザはキャラクタセット を判断する材料がないわけですね。 文字化けの理由が、インストール時のディレクトリやiniファイル の設定のせいばかりだと思って、色々なサイトを見て回っていたので 本当に助かりました。 どうも有り難うございましたm(_ _)m