如何使用活动记录在 yii2 中的一个事务中进行多次删除、更新或插入

how to make multiple delete or update or insert in one transaction in yii2 using active records

在我的代码中使用活动记录在一个事务中执行多个语句是否正确? 因为我不知道该怎么做 请指教,谢谢


$transaction = Yii::$app->db->beginTransaction();
try {
    //.... active record operations
    $transaction->commit();
} catch (\Exception $e) {
    $transaction->rollBack();
    throw $e;
} catch (\Throwable $e) {
    $transaction->rollBack();
    throw $e;
}

来自 Yii2 文档的注释: 在上面的代码中我们有两个 catch-blocks 用于与 PHP 5.x 和 [=28= 兼容] 7.x。 \Exception 从 PHP 7.0 开始实现 \Throwable 接口,因此如果您的应用仅使用 PHP 7.0 及更高版本,您可以跳过带有 \Exception 的部分。

参考文献: