 
  [PR]上記の広告は3ヶ月以上新規記事投稿のないブログに表示されています。新しい記事を書く事で広告が消えます。
ただいまコメントを受けつけておりません。
DB::transaction(function()
{
    $row = App::make('DbTable')->find(1);
    $row->value = 'hoge';
    $row->save();
});
良い点: なんとなく直感的。
悪い点: クロージャーの中に値を渡すのが面倒。
use($var) で渡す変数をオブジェクトなり、配列なりにして必要な値を全てまとめれば良いような気もする。そもそも、クロージャーの使い所がいまいち理解できていない。DB::beginTransaction();
DB::commit();
DB::rollback();
DB::beginTransaction();
try {
    $row = App::make('DbTable')->find(1);
    $row->value = 'hoge';
    $row->save();
    DB::commit();
} catch (Exception $e) {
    Log::error($e);
    DB::rollback();
}
良い点: 柔軟に記述できる。
悪い点: 明示的に記述しなければいけないのが若干面倒。