我想实现不区分大小写的搜索 以下是我的搜索代码
/*get the title to search*/
$newsTitle=Input::get('srach_newsTitle')?Input::get('srach_newsTitle'):'';
$query = DB::table('news');
if( strlen($newsTitle) )
{
$query->whereRaw('LOWERCASE(`newsTitle`) LIKE ? ',[trim(strtolower($newsTitle)).'%']);
}
但它的功能LOWERCASE未定义在我的项目中,以下是错误消息
Connection.php第729行中的QueryException:
SQLSTATE [42000]:语法错误或访问冲突:1305 FUNCTION cpr-laravel.LOWERCASE不存在(SQL:选择count(*)作为news
的聚合,其中LOWERCASE(newsTitle
)LIKE test%)
我做错了什么?plz help
答案 0 :(得分:11)
使用LOWER()
$query->whereRaw('LOWER(`newsTitle`) LIKE ? ',[trim(strtolower($newsTitle)).'%']);