# SQLite3::enableExceptions

(PHP 5 >= 5.3.0, PHP 7, PHP 8)

SQLite3::enableExceptions — Enable throwing exceptions

### 说明

public SQLite3::enableExceptions(bool `$enable` = `false`): bool

Controls whether the SQLite3 instance will throw exceptions or warnings on error.

### 参数

`enable`

  When `true`, the SQLite3 instance, and SQLite3Stmt and SQLite3Result instances derived from it, will throw exceptions on error.

  When `false`, the SQLite3 instance, and SQLite3Stmt and SQLite3Result instances derived from it, will raise warnings on error.

  For either mode, the error code and message, if any, will be available via SQLite3::lastErrorCode() and SQLite3::lastErrorMsg() respectively.

### 返回值

Returns the old value; `true` if exceptions were enabled, `false` otherwise.

### 更新日志

版本 | 说明
--- | ---
8.3.0 | Calling SQLite3::enableExceptions() with `enable` as `false` will trigger a `E_DEPRECATED` warning.

### 示例

示例 #1 SQLite3::enableExceptions() example

`<?php
$sqlite = new SQLite3(':memory:');
try {
$sqlite->exec('create table foo');
$sqlite->enableExceptions(true);
$sqlite->exec('create table bar');
} catch (Exception $e) {
echo 'Caught exception: ' . $e->getMessage();
}
?>`

以上示例的输出类似于：

    Warning: SQLite3::exec(): near "foo": syntax error in example.php on line 4
    Caught exception: near "bar": syntax error

`↑` and `↓` to navigate • `Enter` to select • `Esc` to close • `/` to open