• このエントリーをはてなブックマークに追加

文字コードを設定するコードスニペット例

Shift_JISに変更するという例。

AddDefaultCharset shift-jis
php_value default_charset               Shift_JIS
php_value mbstring.language             Japanese
php_value mbstring.http_input           auto
php_value mbstring.http_output          SJIS
php_value mbstring.internal_encoding    Shift_JIS

こういった.htaccessはいつ使うか?

以下のコードを参照。強制的に、Shift_JISに文字コードを指定して、ファイルを表示させる。どういったときにこういったものが役立つかというと、例えば、今から移設を準備しているサイトの文字コードがShift_JISで作られたサイトで、メタタグにはちゃんと文字コードがShift_JISとなっているのに、文字化けたになってしまう場合。

こういったときには、強制的にShift_JISとして表示させるという設定を行う。

他の方法

他の文字コードである、UTF-8などと文字コードが混ざってしまって、文字コード処理が面倒なときには、一括で文字コードを変換するソフト・アプリを使って、変換した後に、さらにメタタグをUTF-8に一括検索置換するのが良い。

UTF-8で動かすサイトというのは増えてきているので、なかなかShift_JISに設定すると行ったケースは珍しくなってきているかもしれない。

PHPで対応

PHPで対応するには、headerで文字がまだ表示されていないときに文字コードを予め指定しておく必要がある。

<?php
header('Content-Type: text/html; charset=Shift_JIS');
?>

Shift_JISで表示させると明示する時は、ファイルそのものと、メタタグをShift_JISに設定しておく必要があるため注意。

サイト全体の文字コードを統一する

サイト全体の文字コードを統一することで、文字化けなどの問題にまったく影響がないようにする。UTF-8に全体を設定することにより、問題なければ冒頭の通り、表示すれば問題が解決する。ただし、これもサーバーに寄るものなので、サーバーによってUTF-8を明示しておいたほうが良い可能性もあるので注意が必要。

コメント

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です