Php laravel中的数据比较

Php laravel中的数据比较,php,laravel,date,laravel-5,Php,Laravel,Date,Laravel 5,我是laravel的初学者,我正在尝试运行数据库中给出的比较查询。 我保存了一个由表单实现的字段日期以及包括名称在内的其他字段。 我试着查询这个名字,它经常使用下面的代码 我想检索所有以name变量作为我传递的字段名的行(在这里它似乎起作用),然后只检索那些以变量$month传递的数字为指定月份的字段日期行。 这样做的正确形式是什么? 谢谢 皮耶罗 方法Illumb\Database\Elounce\Collection::whereMonth不存在 使用::all()返回一个集合,该集合具有-

我是laravel的初学者,我正在尝试运行数据库中给出的比较查询。 我保存了一个由表单实现的字段日期以及包括名称在内的其他字段。 我试着查询这个名字,它经常使用下面的代码

我想检索所有以name变量作为我传递的字段名的行(在这里它似乎起作用),然后只检索那些以变量$month传递的数字为指定月份的字段日期行。 这样做的正确形式是什么? 谢谢 皮耶罗

方法Illumb\Database\Elounce\Collection::whereMonth不存在

使用
::all()
返回一个
集合,该集合具有
->where()
方法,但
->whereMonth()
仅在Eloquent的
Builder
类上可用。按如下方式更改代码:

$query = subagente::query();
$query = $query->where('subagente', $subagente);
$query = $query->whereMonth('data', $month)->get();
或者,更紧凑:

$results = subagente::where("subagente", $subagente)
->whereMonth("data", $month)
-get();
使用
::query()
::where()
启动查询将生成一个
Builder
实例,您可以在调用
->get()
返回
子代理记录的
集合之前,将加法子句(
->where()
->whereMonth()
等)链接到该实例上


旁注,如果
“data”
“date”

非常感谢您的帮助,我不知道我可以创建一个新实例。关于日期和'date类型字段的名称,但为了避免混淆,我用英语写了它,因为我用意大利语插入了它,明白了。别担心!但是是的,
Builder
,它是由
->where()
->with()
->has()
,等等生成的,可以链接多个方法,但是只要你调用
->get()
,或者如果你从
->all()
开始,它就是一个
集合,具有不同的方法/逻辑。一开始令人困惑,但与拉威尔合作越多,问题就会越清楚。
$results = subagente::where("subagente", $subagente)
->whereMonth("data", $month)
-get();