PHPでの文字化けを今のところ100%回避している対処法

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

スポンサードリンク

きちんと文字コードの設定をしたはずなのに、PHPのプログラムが以下のように文字化けしてしまうことはありませんか?

文字化け

原因は設定した文字コードと、ファイルの文字コードの設定が合っていない場合がほとんどです。

一般的な方法と、私自身がいつも行っている簡単で100%確実に文字化けを直す方法をご紹介します。

(ここではUTF-8での例をご紹介しています。)

 

header関数で文字コードを指定する

コードの先頭行で文字コードを指定するheader関数を実行することで、文字化けを回避できます。

ただし、header関数の前に何かしら出力してしまうと、エラーとなるため、何も出力しないようにしましょう。

参考:PHPのheader関数でリダイレクトする方法とよくあるエラー

php.iniで文字コードの設定をする

php.iniで以下のように記述します。

もっと簡単な方法で文字化け解消したい!

私が文字化けした時に行っている、今のところ回避率100%の技をご紹介します。

phpの文字化けをテキストエディタ「秀丸」で回避

該当のPHPファイルを、テキストエディタの「秀丸」で、エンコードを指定し保存することで、これまでに100%文字化けを回避しています。

  1. まず、秀丸で文字化けしたPHPファイルを開きます。
  2. ファイル(F)からエンコードの種類(D)で文字コードの一覧が表示されます。
  3. 文字化けしたファイルの一覧を見ると、大抵「日本語(Shift-JIS)」などが選択されている場合が多いです。これでは文字化けして当然ですね。
  4. 一覧から「Unicode(UTF-8)」を選択します。
  5. エンコードの切り替えダイアログが出るので、「内容を維持したまま適用(K)」を選択
  6. あとは保存し、そのファイルをFTPでUPすれば文字化けは解消されているはずです。

私の環境では前述したphp.iniの設定もしていますが、やはり文字化けすることがあります。

かと言って、文字化けのためにわざわざheader関数を追加するのも手間だし、抵抗があったため、この方法で文字化けを回避しています。

phpでの文字化けに悩まされた時に試してみるとよいでしょう。

スポンサードリンク

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

コメントを残す

*