Laravel:使用尝试...使用 DB::transaction() 捕获
2022-08-30 07:10:58
我们都用于多个插入查询。在这样做时,应该将a放在里面还是包裹它?是否有必要包括一个如果出现问题,交易将自动失败的时间?DB::transaction()
try...catch
try...catch
包装事务的示例:try...catch
// try...catch
try {
// Transaction
$exception = DB::transaction(function() {
// Do your SQL here
});
if(is_null($exception)) {
return true;
} else {
throw new Exception;
}
}
catch(Exception $e) {
return false;
}
相反,包装一试...抓住:DB::transaction()
// Transaction
$exception = DB::transaction(function() {
// try...catch
try {
// Do your SQL here
}
catch(Exception $e) {
return $e;
}
});
return is_null($exception) ? true : false;
或者只是一个没有尝试的交易...抓住
// Transaction only
$exception = DB::transaction(function() {
// Do your SQL here
});
return is_null($exception) ? true : false;