【发布时间】:2016-06-18 13:19:10
【问题描述】:
我有这样的交易:
return DB::transaction(function() use($intersectedArray,$user,$currentTime) {
try {
foreach ($intersectedArray as $subItemId) {
$user->todoSubItems()->updateExistingPivot($subItemId, ["done" => 1]);
}
}
catch (Exception $e){
return response()->json(500);
}
return response()->json($intersectedArray, 200);
});
首先,像这样在里面运行一个循环可以吗?(如果单个查询更新失败,我希望整个事务回滚。
第二,即使我像这样捕获内部错误,事务仍然会回滚吗?还是会阻止事务工作?
【问题讨论】:
标签: php mysql laravel transactions