我正在使用Laravel 5.8,我有这样的方法:
public function getCourseDefinition()
{
$course_definition = DB::table('getCourseDefinition');
if (request()->has('cod_title') && request('cod_title'))
$course_definition = $course_definition->whereRaw("cod_title = ?", [request('cod_title')]);
}
因此,它基本上检查请求是否包含cod_title
,然后搜索特定的request('cod_title')
。
但是现在我需要添加**LIKE
**,以便根据输入的内容返回类似的结果。
所以我试了这个:
$course_definition = $course_definition->whereRaw("cod_title = ?", 'LIKE', [request('cod_title')]);
但得到了这个错误:
数组到字符串的转换
那么到底出了什么问题?
如何将LIKE
添加到此搜索查询?
2条答案
按热度按时间ecr0jaav1#
whereRaw
只接受两个参数。像这样定义
来自拉腊维尔文件
whereRaw
和orWhereRaw
方法可用于***将原始“where”子句插入查询***。这些方法***接受可选绑定数组作为其第二个***参数qjp7pelc2#
你也可以这样使用
where
雄辩的方法: