©
This document uses PHP Chinese website manual Release
(PHP 5 >= 5.3.0)
SQLite3::__construct — Instantiates an SQLite3 object and opens an SQLite 3 database
$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.
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.
Returns an SQLite3 object on success.
Throws an Exception on failure.
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 ());
?>
[#1] Anonymous [2012-04-28 11:32:14]
Construct will fail if \ backslash is used in the database path,
use / forward slash instead for directory separators.
[#2] bohwaz [2011-05-16 10:59:18]
$encryption_key and all encryption features will be enabled only if the SQLite encryption module is installed. It's a proprietary, costly module. So if it's not present, supplying an encryption key will have absolutely no effect.