SQLite3::close
SQLite3::createAggregate
SQLite3
PHP Manual

# SQLite3::__construct

Instantiates an SQLite3 object and opens an SQLite 3 database

### Description

public SQLite3::__construct ( string `$filename` [, int `$flags` [, string `$encryption_key` ]] )

Instantiates an SQLite3 object and opens a connection to an SQLite 3 database. If the build includes encryption, then it will attempt to use the key.

### Parameters

`filename`

  Path to the SQLite database, or :memory: to use in-memory database.

`flags`

  Optional flags used to determine how to open the SQLite database. By default, open uses SQLITE3_OPEN_READWRITE | SQLITE3_OPEN_CREATE.

  - SQLITE3_OPEN_READONLY: Open the database for reading only.

  - SQLITE3_OPEN_READWRITE: Open the database for reading and writing.

  - SQLITE3_OPEN_CREATE: Create the database if it does not exist.

`encryption_key`

  An optional encryption key used when encrypting and decrypting an SQLite database.

### Return Values

Returns an SQLite3 object on success.

### Errors/Exceptions

Throws an Exception on failure.

### Examples

Example #1 SQLite3::__construct example

`<?php
$db = new SQLite3('mysqlitedb.db');
$db->exec('CREATE TABLE foo (bar STRING)');
$db->exec("INSERT INTO foo (bar) VALUES ('This is a test')");
$result = $db->query('SELECT bar FROM foo');
var_dump($result->fetchArray());
?>`