在 Laravel 中搜索两个数字(价格)

Posted

技术标签:

【中文标题】在 Laravel 中搜索两个数字(价格)【英文标题】:Searching between two numbers(prices) in Laravel 【发布时间】:2015-11-05 15:43:03 【问题描述】:

我正在尝试运行一个雄辩的查询来按类别过滤结果,然后是标题,然后是价格。类别和标题可以正常工作,但是当我添加 BETWEEN 以在两个价格之间进行搜索时,它就崩溃了。有谁知道我可以如何解决我的查询?

@foreach(Inventory::where('category', '=', $cat)->where('title', 'LIKE', '%'. $search_query .'%')->where('price', 'BETWEEN', $min_price, 'AND', $max_price)->get() as $search_results)

【问题讨论】:

【参考方案1】:

您正在寻找whereBetween()。首先,将 Eloquent 查询放入控制器中:

$inventory = Inventory::where('category', $cat)
    ->where('title', 'like', '%' . $search_query . '%')
    ->whereBetween('price', [$min_price, $max_price])
    ->get();

然后,将$inventory 变量传递给您的视图:

return view('my.view.path', compact('inventory'));

最后,在你看来,你可以循环遍历结果:

@foreach($inventory as $search_results)

请参阅Laravel Docs 了解更多信息。

【讨论】:

这很完美,我从来没有意识到有一个 whereBetween 可以说是雄辩的。非常感谢。 @Brandon 很高兴为您提供帮助 :)

以上是关于在 Laravel 中搜索两个数字(价格)的主要内容,如果未能解决你的问题,请参考以下文章

如何从 Windows 命令提示符在 Laravel 中运行 PHPUnit

Azure搜索:价格范围 - 最小值和最大值计算

Laravel 价格验证只接受正数而不是 0

[MRCTF2021]ez_laravel复现

如何在刀片 Laravel 中添加两个数字

Laravel中的数字范围交点搜索