Laravel雄辩的查询带参数

问题描述

早晨

il希望使用Eloquent发出此请求,但我有一个错误

$ModelVars=Model1::with(['Model2' => function($query,$var){
                            return $query->where('field1','like','%'.$var.'%');}])->get();

有人可以帮我吗。 提前谢谢。

解决方法

将代码更改为:

$ModelVars = Model1::with(['Model2' => function($query) use ($var){
    return $query->where('field1','like','%'.$var.'%'); }])
->get();

use不是函数,它是Closure syntax的一部分,它只是使外部作用域的指定变量在闭包内部可用。