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数组函数序列之array_key_exists() - 查找数组键名是否存在

array_key_exists() 定义和用法 array_key_exists() 函数判断某个数组中是否存在指定的 key,如果该 key 存在,则返回 true,否则返回 fal...

PHP观察者模式定义与用法实例分析

本文实例讲述了PHP观察者模式定义与用法。分享给大家供大家参考,具体如下: 我理解的观察者模式就是,当我们触发一个事件的时候,想要把这个操作告诉给我想要告诉的对象,让他们都执行这个操作,...

浅谈PHP中单引号和双引号到底有啥区别呢?

在PHP中,字符串的定义可以使用英文单引号' ',也可以使用英文双引号" "。 但是必须使用同一种单或双引号来定义字符串,如:'Hello World"和"Hello World'为非法...

PHP生成不同颜色、不同大小的tag标签函数

复制代码 代码如下:function getTagStyle(){ $minFontSize=8; //最小字体大小,可根据需要自行更改 $maxFontSize=18; //最大字体大...

让PHP显示Facebook的粉丝数量方法

如果你的网站或者博客上有内链的Facebook页面,你或许想知道拥有多少粉丝。这段代码将帮助你查看Facebook粉丝数,记住,别忘了在你的页面ID第二行添加该段代码。 复制代码 代码如...