我想知道如何在Laravel的雄辩下多次搜索时忽略重音。
目前我有这个:
// $searchTerms => 'Héllo human';
$explodedTerms = explode(" ", $searchTerms);
...
// $explodedTerms => ['Héllo', 'human'];
$query->where(function ($q) use ($explodedTerms) {
foreach ($explodedTerms as $value) {
$q->whereRaw('LOWER(`text`) LIKE ?', ['%'.strtolower($value).'%' ]);
}
});
...
我想使用搜索词“ hello human”来匹配字段文本。
我尝试过ILIKE,但出现错误:
$q->whereRaw('LOWER(`text`) ILIKE ?', ['%'.strtolower($value).'%' ]);
SQLSTATE [42000]:语法错误或访问冲突:1064您的SQL语法有一个错误;请参见语法。查看与您的MySQL服务器版本相对应的手册,以在'ILIKE
附近使用正确的语法
答案 0 :(得分:0)
这就是答案 $ str = iconv('utf-8','ASCII // IGNORE',$ str);