企业🤖AI智能体构建引擎,智能编排和调试,一键部署,支持私有化部署方案 广告
# Class Phalcon\\Mvc\\Model\\Transaction # Class **Phalcon\\Mvc\\Model\\Transaction** *implements*[*Phalcon\\Mvc\\Model\\TransactionInterface*](#) Transactions are protective blocks where SQL statements are only permanent if they can all succeed as one atomic action. Phalcon\\Transaction is intended to be used with Phalcon\_Model\_Base. Phalcon Transactions should be created using Phalcon\\Transaction\\Manager. ``` <pre class="calibre14">``` <?php try { $manager = new \Phalcon\Mvc\Model\Transaction\Manager(); $transaction = $manager->get(); $robot = new Robots(); $robot->setTransaction($transaction); $robot->name = 'WALL・E'; $robot->created_at = date('Y-m-d'); if ($robot->save() == false) { $transaction->rollback("Can't save robot"); } $robotPart = new RobotParts(); $robotPart->setTransaction($transaction); $robotPart->type = 'head'; if ($robotPart->save() == false) { $transaction->rollback("Can't save robot part"); } $transaction->commit(); } catch(Phalcon\Mvc\Model\Transaction\Failed $e) { echo 'Failed, reason: ', $e->getMessage(); } ``` ``` ### Methods public **\_\_construct** (*unknown* $dependencyInjector, \[*boolean* $autoBegin\], \[*string* $service\]) Phalcon\\Mvc\\Model\\Transaction constructor public **setTransactionManager** (*unknown* $manager) Sets transaction manager related to the transaction public **begin** () Starts the transaction public **commit** () Commits the transaction public *boolean***rollback** (\[*string* $rollbackMessage\], \[[*Phalcon\\Mvc\\ModelInterface*](#) $rollbackRecord\]) Rollbacks the transaction public **getConnection** () Returns the connection related to transaction public **setIsNewTransaction** (*unknown* $isNew) Sets if is a reused transaction or new once public **setRollbackOnAbort** (*unknown* $rollbackOnAbort) Sets flag to rollback on abort the HTTP connection public **isManaged** () Checks whether transaction is managed by a transaction manager public **getMessages** () Returns validations messages from last save try public **isValid** () Checks whether internal connection is under an active transaction public **setRollbackedRecord** (*unknown* $record) Sets object which generates rollback action | - [索引](# "总目录") - [下一页](# "Class Phalcon\Mvc\Model\Transaction\Exception") | - [上一页](# "Class Phalcon\Mvc\Model\Row") | - [API Indice](#) »