CakePHP 2.3.5.で、データベースの内容が文字化けするときのチェック項目

文字コードってやっかいですよね。今回もはまりました。次またやるときもはまるんだろうなぁ・・・orz

まずは、データベースの「照合順序」が「utf8_general_ci」であることの確認。

次に今回はまった「my.cnf」の内容確認

変更前

[mysqld]
datadir=/var/lib/mysql
socket=/var/lib/mysql/mysql.sock
user=mysql
# Disabling symbolic-links is recommended to prevent assorted security risks
symbolic-links=0

[mysqld_safe]
log-error=/var/log/mysqld.log
pid-file=/var/run/mysqld/mysqld.pid

変更後

[client]
default-character-set = utf8

[mysqld]
datadir=/var/lib/mysql
socket=/var/lib/mysql/mysql.sock
user=mysql
# Disabling symbolic-links is recommended to prevent assorted security risks
symbolic-links=0
skip-character-set-client-handshake
default-character-set = utf8
character-set-server = utf8
collation-server = utf8_general_ci
init-connect = SET NAMES utf8

[mysqld_safe]
log-error=/var/log/mysqld.log
pid-file=/var/run/mysqld/mysqld.pid

[mysqldump]
default-character-set = utf8

[mysql]
default-character-set = utf8

変更後は

#/etc/init.d/mysqld restart

mysqlの再起動が必要。

参考サイト

ぼーず奮闘記」様の

XAMPP環境で文字化け

————————————–

com.posed」様の

CakePHPでDBのデータが文字化け – com.posed

コメントを残す

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

日本語が含まれない投稿は無視されますのでご注意ください。(スパム対策)