Laravel上的通配符和Like错误无法处理$ variable

时间:2014-12-11 05:46:14

标签: php laravel eloquent wildcard

所以我有这个代码

$Input    = Input::all();
$makethis = Input::flash();
$soptions = Input::get('soptions');

$items = Gamefarm::where('roost_hen', '=',Input::get('sex'))
                 ->where('bname', 'LIKE', '%$soptions%')
                 ->paginate(6);

我想要做的是让laravel接受$soptions内的值。当我尝试对$soptions进行硬编码时,它运行正常。

还有一个问题

$Input    = Input::all();
$makethis = Input::flash();
$textbox  = Input::get('searchbox');
$soptions = Input::get('soptions');

var_dump($soptions);

$items = Gamefarm::where('roost_hen', '=', Input::get('sex'))
                 ->where($soptions, 'LIKE', "$textbox")
                 ->paginate(6);

return View::make('gamefarms/index', compact('items','makethis'));

现在我要做的是使用变量$soptions作为查询的字段名称,当我这样做时出现错误500

1 个答案:

答案 0 :(得分:2)

'%$soptions%'未进行插值,而应编写"%$soptions%""%{$soptions}%"'%' . $soptions . '%'。简单的错误。