ThinkPHP 3.2.2實(shí)現(xiàn)事務(wù)操作的方法
本文實(shí)例講述了ThinkPHP 3.2.2實(shí)現(xiàn)事務(wù)操作的方法。分享給大家供大家參考,具體如下:
手冊(cè)里說(shuō)得非常清楚 :
5.3.19 事務(wù)支持
ThinkPHP提供了單數(shù)據(jù)庫(kù)的事務(wù)支持,如果要在應(yīng)用邏輯中使用事務(wù),可以參考下面的方法:
啟動(dòng)事務(wù):
$User->startTrans()
提交事務(wù):
$User->commit()
事務(wù)回滾:
$User->rollback()
事務(wù)是針對(duì)數(shù)據(jù)庫(kù)本身的,所以可以跨模型操作的 。
例如:
// 在User模型中啟動(dòng)事務(wù) $User->startTrans() // 進(jìn)行相關(guān)的業(yè)務(wù)邏輯操作 $Info = M("Info"); // 實(shí)例化Info對(duì)象 $Info->save($User); // 保存用戶(hù)信息 if (操作成功){ // 提交事務(wù) $User->commit() }else{ // 事務(wù)回滾 $User->rollback() }
IndexController.class.php:
<?php namespace SMS\Controller; use Think\Controller; class IndexController extends Controller { public function index(){ $data['operator'] = 'Testss'; M()->startTrans(); $result = M('feehistory')->add($data); $result1 = $result2 = true; if(!empty($result)){ $regdelData['level'] = '111'; $result1 = M('regdel')->add($regdelData); $regData['level'] = '101'; $result2 = M('reg')->where("registryCode='13693536752-SJB-HUAX-12345678'")->save($regData); } if(!empty($result) && !empty($result1) && !empty($result2) ){ M()->commit(); //$this->success('事物提交',__ROOT__); echo '事物提交'; }else{ M()->rollback(); //$this->error('事物回滾',__ROOT__); echo '事物回滾'; } } }
更多關(guān)于thinkPHP相關(guān)內(nèi)容感興趣的讀者可查看本站專(zhuān)題:《ThinkPHP入門(mén)教程》、《thinkPHP模板操作技巧總結(jié)》、《ThinkPHP常用方法總結(jié)》、《codeigniter入門(mén)教程》、《CI(CodeIgniter)框架進(jìn)階教程》、《Zend FrameWork框架入門(mén)教程》及《PHP模板技術(shù)總結(jié)》。
希望本文所述對(duì)大家基于ThinkPHP框架的PHP程序設(shè)計(jì)有所幫助。
- Thinkphp事務(wù)操作實(shí)例(推薦)
- thinkPHP5.0框架事務(wù)處理操作簡(jiǎn)單示例
- thinkPHP框架中執(zhí)行事務(wù)的方法示例
- ThinkPHP實(shí)現(xiàn)事務(wù)回滾示例代碼
- thinkphp 多表 事務(wù)詳解
- php中在PDO中使用事務(wù)(Transaction)
- php+mysql事務(wù)rollback&commit示例
- 解析php mysql 事務(wù)處理回滾操作(附實(shí)例)
- PHP中實(shí)現(xiàn)MySQL嵌套事務(wù)的兩種解決方案
- php事務(wù)回滾簡(jiǎn)單實(shí)現(xiàn)方法示例
- thinkPHP事務(wù)操作簡(jiǎn)單案例分析
相關(guān)文章
PHP htmlspecialchars() 函數(shù)實(shí)例代碼及用法大全
這篇文章主要介紹了PHP htmlspecialchars() 函數(shù)實(shí)例代碼及用法大全,需要的朋友可以參考下2018-09-09ThinkPHP3.2.3框架實(shí)現(xiàn)執(zhí)行原生SQL語(yǔ)句的方法示例
這篇文章主要介紹了ThinkPHP3.2.3框架實(shí)現(xiàn)執(zhí)行原生SQL語(yǔ)句的方法,結(jié)合實(shí)例形式分析了thinkPHP3.2.3框架針對(duì)查詢(xún)、添加、修改、刪除等原生SQL操作相關(guān)實(shí)現(xiàn)技巧,需要的朋友可以參考下2019-04-04在IIS7.0下面配置PHP 5.3.2運(yùn)行環(huán)境的方法
最近心血來(lái)潮,想學(xué)習(xí)一下php,既然想學(xué)習(xí)了就得需要搭環(huán)境。在網(wǎng)上找來(lái)找去都是說(shuō)IIS5.0或者6.0的配置。真是看得云里霧里的,這樣直接影響了我的判斷力。現(xiàn)特意寫(xiě)下來(lái)在IIS7.0下面如何進(jìn)行配置PHP。2010-04-04PHP下通過(guò)QRCode類(lèi)庫(kù)創(chuàng)建中間帶網(wǎng)站LOGO的二維碼
這篇文章主要介紹了用php中QRCode類(lèi)庫(kù)創(chuàng)建中間帶LOGO的二維碼,QRcode生成二維碼的實(shí)例代碼,有需要的朋友可以參考下2014-07-07laravel 解決路由除了根目錄其他都404的問(wèn)題
今天小編就為大家分享一篇laravel 解決路由除了根目錄其他都404的問(wèn)題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2019-10-10php支付寶手機(jī)網(wǎng)頁(yè)支付類(lèi)實(shí)例
這篇文章主要介紹了php支付寶手機(jī)網(wǎng)頁(yè)支付類(lèi)實(shí)例,是基于Yii框架使用的支付寶接口類(lèi)文件,非常具有實(shí)用價(jià)值,需要的朋友可以參考下2015-03-03PHP調(diào)用VC編寫(xiě)的COM組件實(shí)例
最近項(xiàng)目需要PHP來(lái)解析二進(jìn)制數(shù)據(jù),如果直接PHP做比較麻煩,就想到VC編寫(xiě)COM組件來(lái)做,提供PHP調(diào)用。文章將介紹VC編寫(xiě)COM組件提供PHP調(diào)用,實(shí)現(xiàn)一個(gè)計(jì)算兩個(gè)數(shù)字相加的功能2014-03-03