解决方案:CakePHP中文乱码问题

发现不少人在初学 CakePHP 时遇到中文乱码的问题。如图:

首先需要确认的是,你mysql库里面的编码设置都是utf-8

解决方案很简单,就是在数据库配置文件(/app/config/database.php)里加一句

‘encoding’=> ‘utf8′

即:把原来的
var $default = array(
'driver' => 'mysql',
'persistent' => false,
'host' => 'localhost',
'login' => 'root',
'password' => '',
'database' => 'cakephp',
'prefix' => 'v2op_',
);

改成

var $default = array(
'driver' => 'mysql',
'persistent' => false,
'host' => 'localhost',
'login' => 'root',
'password' => '',
'database' => 'cakephp',
'prefix' => 'v2op_',
‘encoding’=> ‘utf8′,
);

注意,是 utf8 ,不是 utf-8

通常来说,这样就可以解决问题了,如果还有乱码,尝试下面这条
把/cake/libs/view/layouts/default.ctp复制一份到/app/views/layouts/中。
(之所以复制一份是因为cake目录下面是cakephp的核心文件,除非你确定你很强,否则尽量不要修改此文件夹下面的任何东西 ^__^)

然后找到

修改为

注意,这里是 utf-8 咯,而不是上面的 utf8

其实cakephp默认就是utf-8编码。

欢迎交流

1 Response to “解决方案:CakePHP中文乱码问题”


  1. 1 kafka0102

    太他妈的优秀了你!!!!

Leave a Reply