public function start()
    {
        try {
            if ($this->state == self::STATE_STARTED) {
                throw new Exception\TransactionException(__METHOD__ . " Starting transaction on an already started one is not permitted.");
            }
            $this->adapter->getDriver()->getConnection()->beginTransaction();
            $this->state = self::STATE_STARTED;
        } catch (\Exception $e) {
            throw new Exception\TransactionException(__METHOD__ . ". Cannot start transaction '{$e->getMessage()}'.");
        }
        return $this;
    }
public function start()
    {
        try {
            if ($this->state == self::STATE_STARTED) {
                throw new Exception\TransactionException(__METHOD__ . " Starting transaction on an already started one is not permitted.");
            }
            $this->adapter->getDriver()->getConnection()->beginTransaction();
            $this->state = self::STATE_STARTED;
        } catch (\Exception $e) {
            throw new Exception\TransactionException(__METHOD__ . ". Cannot start transaction '{$e->getMessage()}'.");
        }
        return $this;
    }
public function start ( ) { try { if ( $ this -> state == self :: STATE_STARTED ) { throw new Exception \ TransactionException ( __METHOD__ . " Starting transaction on an already started one is not permitted." ) ; } $ this -> adapter -> getDriver ( ) -> getConnection ( ) -> beginTransaction ( ) ; $ this -> state = self :: STATE_STARTED ; } catch ( \ Exception $ e ) { throw new Exception \ TransactionException ( __METHOD__ . ". Cannot start transaction '{$e->getMessage()}'." ) ; } return $ this ; }
Start a new transaction

@throws Exception\TransactionException
@return Transaction
Start a new transaction