トラブルシューティング/文字化け/出力時の文字コード
Q. 出力された文字コードがShift_JISになっていません。どうすればよいでしょうか?
A. 現在、携帯電話のブラウザでサイトを正常に表示させるには、文字コードがShift_JISとなっていなければなりません。ケータイキットを用いてサイトを生成する場合、下記の2段階を経ることになります。
(1) Movable Type の再構築処理によってPHPファイルを出力する。
(2) 携帯からサーバーにアクセスがあるとPHPがHTMLを出力する。
(1)で出力されるPHPファイルの文字コードがサーバーの設定と異なっている場合、PHPエラーが発生します。また、(2)のHTML出力がShift_JISになっていない場合、携帯電話で日本語が正しく表示されません。
(1)のPHPファイルの文字コードを変更するには、Movable Typeの管理画面から[メインメニュー]>[当該のブログ] > [プラグイン]タブ > [設定の表示] と選択し、設定画面から設定可能です。(2)のHTMLの文字コードを変更するにはphp.iniあるいは.htaccessにて設定を行ってください。
以下は、(1)のPHPファイルがEUC-JP、(2)がShift_JISになるような.htaccessの設定の例です。
php_value output_handler mb_output_handler
php_value mbstring.language Japanese
php_value mbstring.internal_encoding EUC-JP
php_value mbstring.http_input SJIS
php_value mbstring.http_output SJIS
php_value mbstring.encoding_translation On
php_value mbstring.detect_order auto
php_value mbstring.substitute_character none
php_value mbstring.script_encoding auto
* 「iモード」「iアプリ/アイアプリ」「i絵文字」「mova」「FOMA」および「i-mode」「i-appli」ロゴはNTTドコモの商標又は登録商標です。
* 「EZweb」「EZアプリ(Java[TM])」「au」はKDDI株式会社の登録商標です。
* 「Yahoo!」および「Yahoo!」「Y!」のロゴマークは、米国Yahoo!Inc.の登録商標または商標です。
* SOFTBANKおよびソフトバンクの名称、ロゴは日本国およびその他の国におけるソフトバンク株式会社の登録商標または商標です。
* その他、当ページに記載されている会社名、製品名などは該当する各社の商標または登録商標です。