Search code examples
phplithium

Lithium PHP framework - How to run db transaction on mysql?


I have been working on an e-commerce website in PHP Lithium framework, actually this one is upgraded from CakePHP, we have to use transaction operation on db in mysql. Just don't know how to do db transaction in PHP Lithium framework.


Solution

  • Since Lithium uses PDO, you can just get the PDO object and call the beginTransaction() method.

    $foo = app\models\Foo::create();
    $pdo = Connections::get('default')->connection; 
    $pdo->beginTransaction();
    $foo->bar = 'Hello';
    $foo->save();
    $pdo->commit();
    

    https://github.com/UnionOfRAD/lithium/issues/1004#issuecomment-23690165 http://www.php.net/manual/en/pdo.begintransaction.php