2017-08-04 28 views
1

上Laravel 5 DB工作::交易,但投擲以下錯誤:DB ::交易擲未定義變量錯誤異常

exception 'ErrorException' with message 'Undefined variable: tasks'

這裏是我的代碼:

private function addTasks($tasks, $id) { 
    DB::transaction(function() { 
    DB::table('task')->whereIn('id', $tasks)->update(array('task_parent_id' => $id)); 
    }); 
} 

注:其沒有DB::transaction功能正常工作。

我檢查了代碼的每一行,但沒有發現任何錯誤,請讓我知道哪裏錯了?

+0

向我們展示你的路線! – Maraboc

+0

嘗試'dd($任務)'之前,你的查詢是有數據 –

+0

它是一個私人功能,所以我認爲沒有路線 –

回答

3

你應該通過變量$tasks匿名函數:
試試這個

private function addTasks($tasks, $id) { 
     DB::transaction(function() use ($tasks) { 
     DB::table('task')->whereIn('id', $tasks)->update(array('task_parent_id' => $id)); 
     }); 
    } 
3

使用此:

private function addTasks($tasks, $id) { 
    DB::transaction(function() use ($tasks, $id) { 
     DB::table('task')->whereIn('id',$tasks)->update(array('task_parent_id' => $id)); 
    }); 
}