Transactions - Nesting.php 457 Bytes
Newer Older
1

hansbrix's avatar
hansbrix committed
2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24
<code type="php">
function saveUserAndGroup(Doctrine_Connection $conn, User $user, Group $group) {
    $conn->beginTransaction();
    
    $user->save();

    $group->save();

    $conn->commit();
}

try {
    $conn->beginTransaction();

    saveUserAndGroup($conn,$user,$group);
    saveUserAndGroup($conn,$user2,$group2);
    saveUserAndGroup($conn,$user3,$group3);

    $conn->commit();
} catch(Doctrine_Exception $e) {
    $conn->rollback();
}
</code>