我在我的模型中有这个查询:
型号:
class Webmasters {
public static function webmasters($filt, $cat) {
$top_pages = DB::table('web.tools')
->where('filter',$filt)
->where('category', $cat)
->limit(20)->get();
return $top_pages;
}
变量 $ filt 和 $ cat 作为参数从控制器传递。
我想使用这样的查询:
class Webmaster {
public static function webmasters($filt, $cat) {
$top_pages = DB::select(DB::raw("SELECT *
FROM web.tools
WHERE filter = $filt
WHERE category = $cat
LIMIT 20"));
return $top_pages;
}
}
我现在不知道如何在第二个查询中使用这些占位符。第一个就像一个魅力,但第二个给我一个SQL错误,因为占位符 $ filt 和 $ cat
答案 0 :(得分:2)
您可以传递一组参数以绑定到选择。
class Webmaster {
public static function webmasters($filt, $cat) {
$top_pages = DB::select(DB::raw("SELECT *
FROM web.tools
WHERE filter = :filter
AND category = :category
LIMIT 20"), [
':filter' => $filt,
':category' => $cat
]);
return $top_pages;
}
}