Php 具有多个where条件的Laravel更新查询不起作用

Php 具有多个where条件的Laravel更新查询不起作用,php,mysql,laravel,Php,Mysql,Laravel,我受够了。简单的更新方法不起作用。它应该更新与给定项目id、餐厅id和avil_日期匹配的记录 public function updateWeeklyItem(){ $item_id=request('item_id'); $restaurant_id=request('restaurant_id'); $avil_date=request('avil_date'); weekly_item::where(f

我受够了。简单的更新方法不起作用。它应该更新与给定项目id、餐厅id和avil_日期匹配的记录

public function updateWeeklyItem(){
        
        $item_id=request('item_id');
        $restaurant_id=request('restaurant_id');
        $avil_date=request('avil_date');


        weekly_item::where(function($query) use ($item_id, $restaurant_id,$avil_date){
            $query->where('item_id', $item_id)
        ->where('restaurant_id', $restaurant_id)
        >where('avil_date', $avil_date);
         })->update ([
        'start_time'=>request('start_time'),
        'end_time'=>request('end_time'),
        'tiffin-switch'=>request('tiffin-switch'),
        'lunch-switch'=>request('lunch-switch'),
        'snacks-switch'=>request('snacks-switch'),
        'dinner-switch'=>request('dinner-switch'),
        'special-switch'=>request('special-switch'),
        'extend-avil'=>request('extend-avil'),
        'unit'=>request('unit'),
        'quantity'=>request('quantity')
        ]);

    }
使用此代码:

public函数updateWeeklyItem(请求$Request){
$item\u id=$request->item\u id;
$restaurant\u id=$request->restaurant\u id;
$avil_date=$request->avil_date;
$item=每周\u项目::其中(函数($query)使用($item\u id,$restaurant\u id,$avil\u date){
$query->where('item\u id',$item\u id)
->其中('restaurant\u id',$restaurant\u id)
->其中('avil_日期',$avil_日期);
})->第一个();
$item_数组=(
“开始时间”=>$request->start\u time,
“结束时间”=>$request->end\u时间,
“tiffin开关”=>$request->tiffin开关,
“午餐切换”=>$request->午餐切换,
“零食开关”=>$request->零食开关,
“晚餐开关”=>$request->晚餐开关,
“特殊开关”=>$request->特殊开关,
“扩展avil”=>$request->扩展avil,
“单位”=>$request->unit,
“数量”=>$request->quantity
);
$item->update($item\u数组);
返回$item;
}

您的错误是什么?