さくらインターネットでPHP x CakePHP、MySQLをUTF8化する

さくらインターネット(スタンダートプラン)がEUC環境(ujis)なので、CakePHPを
普通に使うと文字化けした。そこで、下記を設定。

1.PHP.iniの個別設定
 さくらインターネットのサーバコントロールパネルより「PHP設定の編集」で
 以下を入力。

mbstring.encoding_translation = Off
mbstring.internal_encoding = “UTF-8″
mbstring.http_input = auto
mbstring.http_output = “UTF-8″

2.phpMyAdminの照合順序設定
 1)データベースの照合順序変更
  phpMyAdminのホームで「MySQL 接続の照合順序」を「utf8_general_ci」にする。
 2)テーブルの照合順序変更
  作成したテーブルの「操作」 – 「照合順序」を「utf8_general_ci」にする。
 3)カラムの照合順序変更
  作成したテーブルのカラムの「照合順序」がutf8になっていないものを対象に、
  「編集」 – 「照合順序」を「utf8_general_ci」にする。

  ※phpMyAdmin上で文字化けしてる場合は上記を設定することで解決。
   特にカラムの照合順序変更を忘れずに

3.CakePHPのエンコード変換設定
 app/config/database.php で下記の「 ‘encoding’ => ‘utf8’,」を追記する。

class DATABASE_CONFIG {
var $default = array(
‘driver’ => ‘mysql’,
‘persistent’ => false,
‘host’ => ‘localhost’,
‘login’ => ‘root’,
‘password’ => ”,
‘database’ => ‘testdb’,
‘prefix’ => ”,
‘encoding’ => ‘utf8’,
);
}