logo

Palette - 让它色彩缤纷🎨

Palette — 可视化页面构建器,无需专业设计背景。

在线演示 下载 Palette

滚动
01/10/2025, by Ivan

数据库 API 在发生错误时会抛出异常,可以通过在 try {} catch() {} 块中包装数据库操作来捕获,如下面示例所示:

// 在这里开启事务。
$txn = $connection->startTransaction();
try {
  $id = $connection->insert('example')
    ->fields([
      'field1' => 'mystring',
      'field2' => 5,
    ])
    ->execute();

  my_other_function($id);

  return $id;
}
catch (Exception $e) {
  // 某处发生错误,因此立即回滚。
  $txn->rollBack();
  // 将异常记录到 watchdog。
  \Drupal::logger('type')->error($e->getMessage());
}