thinkphp 多表 事务详解

yipeiwu_com6年前PHP代码库
如下所示:
复制代码 代码如下:

function makeAcquire($nUsers,$nAwards)
    {
     //更新数据库
     $tranDb = new Model();
     $tranDb->startTrans();
     for($i = 0; $i < sizeof($nUsers); $i++)
     {
      //更新表Acquire
      $flagAc = $tranDb->table('Acquire')->add($acquire);
      //更新表Users
      $where = array('u_id'=>$nUsers[$i]['u_id']);
      $flagU = $tranDb->table('Users')->where($where)->setInc('u_man_count',1);
      //更新表Award
      $where = array('a_id'=>$nAwards[$i]['a_id']);
      $flagA = $tranDb->table('Award')->where($where)->setDec('a_count',1);
     }
     if($flagAc && $flagU && $flagA)
     {
      $tranDb->commit();
     }
     else
     {
      $tranDb->rollback();
     }
    }

相关文章

PHP进阶学习之垃圾回收机制详解

PHP进阶学习之垃圾回收机制详解

本文实例讲述了PHP垃圾回收机制。分享给大家供大家参考,具体如下: 一、概念 垃圾回收机制是一种动态存储分配的方案。它会自动释放程序不再需要的已分配的内存块。垃圾回收机制可以让程序员不必...

php创建session的方法实例详解

php创建session的方法实例详解

本文实例讲述了php创建session的方法。分享给大家供大家参考。具体分析如下: 保存session只需要两个步骤,开启session和保存session数据。默认情况下,sessio...

PHP自定session保存路径及删除、注销与写入的方法

本文实例讲述了PHP自定session保存路径及删除、注销与写入的方法。分享给大家供大家参考。具体方法如下: 复制代码 代码如下: $sessionpath=session_save_p...

用PHP去掉文件头的Unicode签名(BOM)方法

废话不多说,直接上代码 <?php //此文件用于快速测试UTF8编码的文件是不是加了BOM,并可自动移除 //By Bob Shen $basedir=".";...

推荐十款免费 WordPress 插件

推荐十款免费 WordPress 插件

2015必备wordpress插件列表。为了增强wordpress站点,一些优秀有效的免费wordpress 插件是必不可少的。 WordPress 插件用于提升 wordpress...