thinkPHP框架中执行事务的方法示例
程序员文章站
2022-12-28 22:53:57
本文实例讲述了thinkphp框架中执行事务的方法。分享给大家供大家参考,具体如下:
function tran(){
//定义事务成功失败的标志
$...
本文实例讲述了thinkphp框架中执行事务的方法。分享给大家供大家参考,具体如下:
function tran(){ //定义事务成功失败的标志 $mark = true; //1. 实例化模型 $model = d('student'); //2. 开启事务处理 $model->starttrans(); //3. ls减少2000 $sql = "update student set money=money-2000 where uname='ls'"; $result = $model->execute($sql); //判断sql执行是否成功,如果失败,则将$mark改为false if(!$result){ $mark = false; } //4. zs增加2000 $sql = "update student set money=money+2000 where uname='zs'"; $result = $user->execute($sql); //判断sql执行是否成功,如果失败,则将$mark改为false if(!$result){ $mark = false; } $mark = false; //暂时强制改为false,测试回滚效果 //5. 提交事务 //判断$mark的值,为ture则提交,为false则回滚 if($mark){ $user->commit(); } else { $user->rollback(); } }
tp中事务相关的方法: 都是在model.class.php中定义好的
starttran()
: 开启事务处理
commit()
: 提交事务
rollback()
: 回滚
当需要执行的事务是在不同的sql表中时,只需要执行两个sql的model定义的不同即可
更多关于thinkphp相关内容感兴趣的读者可查看本站专题:《thinkphp入门教程》、《thinkphp模板操作技巧总结》、《thinkphp常用方法总结》、《codeigniter入门教程》、《ci(codeigniter)框架进阶教程》、《zend framework框架入门教程》及《php模板技术总结》。
希望本文所述对大家基于thinkphp框架的php程序设计有所帮助。
上一篇: C# DLL(程序集)的生成和调用
下一篇: Log4Net使用学习笔记