2
我需要根據一組關鍵字在數據庫中執行名稱搜索。結果應該是區分重音和不區分大小寫的。php,mysql:比較字符串 - 區分重音和不區分大小寫
的解決方案,我發現here加上一些修改,以允許不區分大小寫下面,我用下面的代碼:
$sql = "SELECT name FROM table_names WHERE LOWER(name) LIKE _utf8 '%".strtolower($keyword)."%' COLLATE utf8_bin";
在檢索關鍵字中包含的口音,這並不爲我工作。但奇怪的是,這個查詢在phpMyAdmin中運行良好(但是我在某處讀到這應該不可靠)。這裏可能是什麼問題?
UPDATE: 我修改我的代碼:
$sql = "SELECT name FROM table_names WHERE LOWER(name) LIKE LOWER(_utf8 '%$keyword%') COLLATE utf8_bin";
,但我仍然沒有結果。
謝謝!
我想呼應它和口音都在那裏。回聲陳述也是我用來在phpMyAdmin中運行的查詢。 – u11 2010-09-21 07:40:52
檢查我編輯的答案 – sheeks06 2010-09-21 08:15:51
謝謝!但我無法將我的表的排序規則設置爲utf8_bin,因爲它必須是大小寫不敏感的。我只有一個實例,在這個實例中我必須做出一個對口音敏感的比較。 – u11 2010-09-21 08:25:21