Laravel 5.1 如何确保我的 eloquent 查询关闭安全

Laravel 5.1 how to make my eloquent query closure secured

我想做的是求和每个预订模型的总存款,条件是小于文本中输入的金额。

这是我的查询:

$reservations->whereHas('deposits', function($query) use ($etc_filters){
    $query->havingRaw('SUM(amount) <= '.$etc_filters);
});

如您所见,我正在使用可以注入另一个查询的 havingRaw。现在我无法为我的代码找到任何替代解决方案。

您可以使用 havingRaw 方法接受的第二个参数,使值成为一个绑定,在将其插入查询之前进行转义:

$reservations->whereHas('deposits', function($query) use ($etc_filters){
    $query->havingRaw('SUM(amount) <= ?', $etc_filters);
});