みんなの「教えて(疑問・質問)」にみんなで「答える」Q&Aコミュニティ

こんにちはゲストさん。会員登録(無料)して質問・回答してみよう!

解決済みの質問

[HTML-PHP]あるPHPファイルだけ文字化け

お世話になります。

XP/PHP5.2.9/Apache2.2.11
の環境で、簡単なシステムを作っているのですが、その際に
PHP側で
header( "Content-Type: text/html;charset=shift_jis");
HTML側で
<meta http-equiv="content-type" content="text/html; charset=shift_jis">
と明示的にSJISにしているのですが、実際にローカルで確認すると文字化けしてしまうPHPファイルがあります。(1ファイルのみ)
他のPHPファイルは同様のヘッダー情報を送信していますが、文字化けせずに画面出力されています。

HTML-PHP初心者のため、補足等必要になるとは思いますが、どうぞご教授下さい。

投稿日時 - 2010-04-14 13:47:15

QNo.5825379

すぐに回答ほしいです

質問者が選んだベストアンサー

IEで見たり、FireFoxで見たりと複数ブラウザで確認していますか?
文字化けしている環境をつきとめると、原因が見えてくるかも知れません。
<meta http-equiv="content-type" content="text/html; charset=shift_jis">
の前に、日本語(2バイト文字)が書かれている等はありませんか?
全角空白等の見つけにくいものかも知れません。
ブラウザのソースを表示で出力された結果を、半角空白、全角空白を代替え記号で表示できるようなテキストエディタで表示させれば、判るかも知れません。

文字化けした環境で、文字コードを自動ではなく、手動で切り替えて文字化けの仕方から、どの文字コードだと認識されているか、を確認すると判るかも知れません。

該当のファイルで外部データを読み込んでいないか(DBからデータを取得している、テキストファイルを読み込んでいる、別のPHPファイルをIncludeしている)、読み込んでいたらそちらの文字コードが正しくないのかも知れません

投稿日時 - 2010-04-14 17:24:40

お礼

ご回答ありがとうございます。

>ブラウザのソースを表示で出力された結果を、半角空白、全角空白を代替え記号で表示できるようなテキストエディタで表示させれば、判るかも知れません。

と仰られたのでサクラエディタで開いてみました。
そこで驚愕・・・文字化けしているPHPファイル自体の文字コードがUTF-8になっていました・・・。(苦笑)
サクラエディタでソースの文字コードをSJISに変換して再度ローカルで確認したところ、問題なく動作しました^^;

この上ない凡ミスでお恥ずかしい限りです。

BellBell様の回答は今後文字化けが発生した際のヒントとして大変有意義なものでした。

ご回答感謝いたします。

投稿日時 - 2010-04-15 12:49:20

このQ&Aは役に立ちましたか?

6人が「このQ&Aが役に立った」と投票しています

回答(3)

ANo.3

初心者とのことなので、
mb_internal_encoding()
mb_http_output()
mb_detect_order()
などの文字コード関連の設定もご確認ください。

投稿日時 - 2010-04-14 18:26:40

お礼

ご回答ありがとうございます。

No2のBellBell様へのお礼に書きました通り、PHP云々以前の話でした・・。

>mb_internal_encoding()
>mb_http_output()
>mb_detect_order()

これらはまだ使ったことのない関数ですので、今後機会がありましたら使ってみたいと思います。

投稿日時 - 2010-04-15 12:51:05

>header( "Content-Type: text/html;charset=shift_jis");
外したら・・・申し訳ないのですが、
『shift_jis』ではなく『shift-jis』ってことないですか?

参照URL
http://www.shtml.jp/mojibake/meta.html

投稿日時 - 2010-04-14 14:10:01

お礼

ご回答ありがとうございます。

>『shift_jis』ではなく『shift-jis』ってことないですか?

試してみましたが、shift_jisと同様の結果になります。

投稿日時 - 2010-04-15 12:03:52

あなたにオススメの質問