Symfony \ Component \ Debug \ Exception \ FatalThrowableError:解析错误:语法错误,意外的'}'
我遵循了此资源,在这里嵌套了How to combine WHERE clauses in Eloquent,但是在运行代码时遇到以下错误。中断的行是回调函数的大括号,这是怎么回事?
$providers = DB::table('users')
->where('verified', '=', 1)
->where('status', '=', 1)
->where(function ($query) use ($search) {
$query->where(DB::raw('lower(name)'), 'LIKE', "%".strtolower($search)."%")
->orWhere(DB::raw('lower(username)'), 'LIKE', "%".strtolower($search)."%")
})
->where('city', '=', $t)
->take($limit)
->toSql();
答案 0 :(得分:1)
内部;
之后缺少$query
。我认为这可能是这样的:
->where(function ($query) use ($search) {
$query->where(DB::raw('lower(name)'), 'LIKE', "%".strtolower($search)."%")
->orWhere(DB::raw('lower(username)'), 'LIKE', "%".strtolower($search)."%");
})
代码最后需要分号,因为它是函数中的行/语句。此函数是回调没关系。