当前位置:K88软件开发文章中心编程语言PHPPHP01 → 文章内容

thinkphp5.0事务处理方法总结

减小字体 增大字体 作者:佚名     来源:asp编程网  发布时间:2018-12-30 6:10:52

如果在程序中使用事务处理的话,需要数据库引擎支持事务处理。比如 MySQL的MyISAM是不支持事务处理,不能使用,需要使用InnoDB引擎。
使用 transaction 方法操作数据库事务,当发生异常会自动回滚,例如:
自动控制事务处理
Db::transaction(function(){
    Db::table('think_user')->find(1);
    Db::table('think_user')->delete(1);
});
也可以手动控制事务,例如:
// 启动事务
Db::startTrans();
try{
    Db::table('think_user')->find(1);
    Db::table('think_user')->delete(1);
    // 提交事务
    Db::commit();    
} catch (\Exception $e) {
    // 回滚事务
    Db::rollback();
}

thinkphp5.0事务处理方法总结