ThinkPHP5 事务使用方法
- <?php
- $success = true; //因为try catch中不能使用success和error返回结果,所以定义一个变量用于判断
- /**
- * 知道success和error方法是怎么实现的吗?
- * 看源码的最后两行
- * $response = Response::create($result, $type)->header($header);
- * throw new HttpResponseException($response);
- * 没错,是用抛出异常的方式实现的
- * 而代码try正好捕获了该异常,所以代码永远只会走catch
- */
- // 启动事务
- Db::startTrans();
- try {
- $this->dbName->insert($input);
- $lastId = $this->dbName->getLastInsID();
- $relation = Acms::make_relation($lastId, $roleIds, 'uid', 'group_id');
- Db::name("AuthRelation")->insertAll($relation);
- // 提交事务
- Db::commit();
- } catch (Exception $e) {
- // 回滚事务
- Db::rollback();
- $success = false;
- }
- if ($success) {
- $this->success("新增管理员成功!");
- } else {
- $this->error("新增管理员失败!");
- }
- ?>
解压密码: detechn或detechn.com
免责声明
本站所有资源出自互联网收集整理,本站不参与制作,如果侵犯了您的合法权益,请联系本站我们会及时删除。
本站发布资源来源于互联网,可能存在水印或者引流等信息,请用户自行鉴别,做一个有主见和判断力的用户。
本站资源仅供研究、学习交流之用,若使用商业用途,请购买正版授权,否则产生的一切后果将由下载用户自行承担。