我有一个CakePHP网站工作正常(在编码方面)......但是shell脚本在保存数据时没有正确编码数据。网站和shell使用相同的连接字符串...但shell程序不遵守UTF8编码。 (1奇怪的是要注意:如果我从连接字符串中删除'encoding'元素并运行shell程序就会按预期保存数据......但我想重新使用相同的连接字符串。)
mysql数据库:
CHARACTER SET utf8 DEFAULT COLLATE utf8_general_ci
cakephp mysql连接字符串:
var $default = array(
'driver' => 'mysql',
'persistent' => false,
'host' => 'localhost',
'login' => 'user',
'password' => 'mypassword',
'database' => 'dbname',
'prefix' => '',
'encoding' => 'utf8'
);
答案 0 :(得分:1)
在shell脚本中,尝试在连接后立即运行以下查询:
SET NAMES 'utf8'