thinkPHP事务操作简单案例分析

Fiorenza ·
更新时间:2024-09-20
· 974 次阅读

本文实例讲述了thinkPHP事务操作。分享给大家供大家参考,具体如下:

1.说明

Db::startTrans(); try{ 操作; 对象->save(); Db::commit(); } catch (Exception $ex) { Db::rollback(); throw $ex; }

2.案例

private function createOrderByTrans($snap) { Db::startTrans(); try { $orderNo = $this->makeOrderNo(); $order = new OrderModel(); $order->user_id = $this->uid; $order->order_no = $orderNo; $order->total_price = $snap['orderPrice']; $order->total_count = $snap['totalCount']; $order->snap_img = $snap['snapImg']; $order->snap_name = $snap['snapName']; $order->snap_address = $snap['snapAddress']; $order->snap_items = json_encode($snap['pStatus']); $order->save(); $orderID = $order->id; $create_time = $order->create_time; foreach ($this->oProducts as &$p) { $p['order_id'] = $orderID; } $orderProduct = new OrderProduct(); $orderProduct->saveAll($this->oProducts); Db::commit(); return [ 'order_no' => $orderNo, 'order_id' => $orderID, 'create_time' => $create_time ]; } catch (Exception $ex) { Db::rollback(); throw $ex; } }

更多关于thinkPHP相关内容感兴趣的读者可查看本站专题:《ThinkPHP入门教程》、《thinkPHP模板操作技巧总结》、《ThinkPHP常用方法总结》、《codeigniter入门教程》、《CI(CodeIgniter)框架进阶教程》、《Zend FrameWork框架入门教程》及《PHP模板技术总结》。

希望本文所述对大家基于ThinkPHP框架的PHP程序设计有所帮助。

您可能感兴趣的文章:ThinkPHP 3.2.2实现事务操作的方法Thinkphp事务操作实例(推荐)thinkPHP5.0框架事务处理操作简单示例thinkPHP框架中执行事务的方法示例ThinkPHP实现事务回滚示例代码thinkphp 多表 事务详解php中在PDO中使用事务(Transaction)php+mysql事务rollback&commit示例解析php mysql 事务处理回滚操作(附实例)PHP中实现MySQL嵌套事务的两种解决方案php事务回滚简单实现方法示例



需要 登录 后方可回复, 如果你还没有账号请 注册新账号