我正在cakephp 1.3上工作。我在字符編碼中發現問題。我有兩個模型關鍵字和組,使關鍵字屬於組。我想要做的是在模型關鍵字中執行全文查詢。CakePHP HTML qoute編碼問題
function geParentKeyword($keyword) {
//$keyword = *Acupuncturist*; Assuming this as input
$match = html_entity_decode("MATCH(Keyword.keyword) AGAINST (\"".trim($keyword)."\" IN BOOLEAN MODE)");
return $this->find('first', array('fields' =>array('Group.name'), 'conditions' =>array($match)));
}
我得到了錯誤的結果與此查詢。我調試查詢,我得到這個
SELECT `Group`.`name`
FROM `keywords` AS `Keyword`
LEFT JOIN `groups` AS `Group` ON (`Keyword`.`group_id` = `Group`.`id`)
WHERE MATCH(`Keyword`.`keyword`) AGAINST ("*Acupuncturist*" IN BOOLEAN MODE)
LIMIT 1"
查詢是完美的,但這裏的問題是在$比賽蛋糕轉換雙引號爲"
我html_entity_decode和str_replace()函數嘗試,但他們表現出相同的查詢。
欲瞭解更多詳情。
core.php中
Configure::write('App.encoding', 'UTF-8');
database.php中
var $default = array(
….
'encoding' => 'UTF8',
);
預期結果
MATCH(Keyword.keyword) AGAINST (' *Acupuncturist* ' IN BOOLEAN MODE)
請指引我是什麼的問題。提前致謝。
在調用getParentKeyword之後,'$ keyword'看起來像什麼?在功能頭後直接打印出來... – shadyyx
它顯示*鍼灸師*這是有效的 –