1

私は自分のサイトでデータベース呼び出し用のシングルトンラッパーを書いています。

PDOから例外をキャッチする場合、スクリプトを終了するか、警告として処理する必要がありますか?

PDOによってスローされた例外の重大度を判断する方法はありますか?たとえば、PHPの通知に相当するものはありますか?

4

1 に答える 1

1

いいえ、データベースエラーは致命的ではなく、実行を終了する必要があります。そうでない場合は、仕様で別の方法で指示されます。

@PeeHaaが言うように、エラーはスクリプトを強制終了するのではなく、例外をスローする必要があります。特定のドライバーにはデフォルトでこのオプションがある場合がありますが、通常、MySQLドライバーでは、接続時にエラーモードを設定する必要があります。

メインの手順が失敗した場合にエラーをキャッチして代替手段を実行できるように、例外がスローされることを許可することをお勧めします。

try {
    $sthmt->execute();
}
catch (Exception $error) {
    // Opps, the statement failed, revert or initiate error procedure
}
于 2012-12-09T23:16:48.563 に答える