我有这个事务,我所有的mysql表都使用innodb引擎:
\DB::beginTransaction();
try{
User::create([
'name' => 'test',
'status' => 1
]);
array_push($test_array, ['test']);
\DB::commit();
} catch(\Exception $e){
\DB::rollBack();
}
如果我 dump()
例外情况是:
array\u push()要求参数1为array,给定null
因为 $test_array
为空。但是,事务不会回滚,并且 user
仍在创建。我不知道我做错了什么。
我也会得到同样的结果:
\DB::transaction(function () {
User::create([
'name' => 'test',
'status' => 1
]);
array_push($test_array, ['test']);
});
暂无答案!
目前还没有任何答案,快来回答吧!