# The SQLite3 class

(PHP 5 >= 5.3.0, PHP 7)

## Introduction

A class that interfaces SQLite 3 databases.

## Class synopsis

SQLite3 {
/* Methods */
public backup ( SQLite3 `$destination_db` [, string `$source_dbname` = "main" [, string `$destination_dbname` = "main" ]] ) : bool
public busyTimeout ( int `$msecs` ) : bool
public changes ( ) : int
public close ( ) : bool
public __construct ( string `$filename` [, int `$flags` = SQLITE3_OPEN_READWRITE | SQLITE3_OPEN_CREATE [, string `$encryption_key` = "" ]] )
public createAggregate ( string `$name` , mixed `$step_callback` , mixed `$final_callback` [, int `$argument_count` = -1 ] ) : bool
public createCollation ( string `$name` , callable `$callback` ) : bool
public createFunction ( string `$name` , mixed `$callback` [, int `$argument_count` = -1 [, int `$flags` = 0 ]] ) : bool
enableExceptions ([ bool `$enableExceptions` = `FALSE` ] ) : bool
public static escapeString ( string `$value` ) : string
public exec ( string `$query` ) : bool
public lastErrorCode ( ) : int
public lastErrorMsg ( ) : string
public lastInsertRowID ( ) : int
public loadExtension ( string `$shared_library` ) : bool
public open ( string `$filename` [, int `$flags` = SQLITE3_OPEN_READWRITE | SQLITE3_OPEN_CREATE [, string `$encryption_key` = "" ]] ) : void
public openBlob ( string `$table` , string `$column` , int `$rowid` [, string `$dbname` = "main" [, int `$flags` = SQLITE3_OPEN_READONLY ]] ) : resource|false
public prepare ( string `$query` ) : SQLite3Stmt|false
public query ( string `$query` ) : SQLite3Result|false
public querySingle ( string `$query` [, bool `$entire_row` = `FALSE` ] ) : mixed
public static version ( ) : array
}

## Table of Contents

- SQLite3::backup — Backup one database to another database
- SQLite3::busyTimeout — Sets the busy connection handler
- SQLite3::changes — Returns the number of database rows that were changed (or inserted or deleted) by the most recent SQL statement
- SQLite3::close — Closes the database connection
- SQLite3::__construct — Instantiates an SQLite3 object and opens an SQLite 3 database
- SQLite3::createAggregate — Registers a PHP function for use as an SQL aggregate function
- SQLite3::createCollation — Registers a PHP function for use as an SQL collating function
- SQLite3::createFunction — Registers a PHP function for use as an SQL scalar function
- SQLite3::enableExceptions — Enable throwing exceptions
- SQLite3::escapeString — Returns a string that has been properly escaped
- SQLite3::exec — Executes a result-less query against a given database
- SQLite3::lastErrorCode — Returns the numeric result code of the most recent failed SQLite request
- SQLite3::lastErrorMsg — Returns English text describing the most recent failed SQLite request
- SQLite3::lastInsertRowID — Returns the row ID of the most recent INSERT into the database
- SQLite3::loadExtension — Attempts to load an SQLite extension library
- SQLite3::open — Opens an SQLite database
- SQLite3::openBlob — Opens a stream resource to read a BLOB
- SQLite3::prepare — Prepares an SQL statement for execution
- SQLite3::query — Executes an SQL query
- SQLite3::querySingle — Executes a query and returns a single result
- SQLite3::version — Returns the SQLite3 library version as a string constant and as a number