我正在使用最新的CakePHP(2.1.x),当我查找如下内容时,当Model.name
字段包含西班牙语字符时,它会返回一个空数组:
$this->Model->find(
'list',
array(
'conditions' => array(
'LOWER(Model.name) LIKE' => '%'.$keyword.'%'
),
'fields' => array(
'Model.id',
'Model.name'
)
)
);
当我显示sql_dump
元素时,查询很好,它会显示0 Error
,1 Affected
和1 Num Rows
;另外,当我尝试查询时,它在phpMyAdmin上工作得很好。
整个网站为英文,内容类型为UTF-8。我试图改变编码而没有成功。
如果这可能有任何帮助,该字段将作为name varchar(255) latin1_swedish_ci
存储在DB(MySQL)上。
答案 0 :(得分:3)
也许你需要在数据库连接上指定utf-8编码
检查this,希望有所帮助
答案 1 :(得分:0)
实际上你需要为数据库指定utf-8:
转到 ROOT / app / config / database.php
在课程DATABASE_CONFIG中更改编码
'encoding' => 'utf8',