wherebetween laravel 不使用变量

wherebetween laravel not working with variable

我正在使用 Laravel 5.8,我想在我的数据库中获取两个价格之间的行。

我使用此代码获取我的产品:

$prd = Product::where($args)->whereBetween('price', [$request->min_price, $request->max_price])->get();

但问题是当我使用上面的代码时 return $prd; 没有任何返回,但是当我将静态数字作为 $request->min_price$request->max_price 时它可以正常工作

我必须将其中之一设置为静态数字,如下所示:

$prd = Product::where($args)->whereBetween('price', [100, $request->max_price])->get();

或:

$prd = Product::where($args)->whereBetween('price', [$request->min_price, 1000])->get();

我的问题或错误在哪里?

你试过用整数类型转换它们吗,也许它们是数字,

$prd = Product::where($args)->whereBetween('price', [(int)($request->min_price), (int)($request->max_price)])->get();