PHP Conference Nagoya 2025

SQLite3::__construct

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

SQLite3::__construct Instancia um objeto SQLite3 e abre um banco de dados SQLite 3

Descrição

public SQLite3::__construct(string $filename, int $flags = SQLITE3_OPEN_READWRITE | SQLITE3_OPEN_CREATE, string $encryptionKey = "")

Instancia um objeto SQLite3 e abre uma conexão com um banco de dados SQLite 3. Se a compilação incluir criptografia, ele tentará usar a chave.

Parâmetros

filename

Caminho para o banco de dados SQLite, ou :memory: para usar um banco de dados em memória. Se filename for uma string vazia, então um banco de dados privado, temporário no disco será criado. Este banco de dados privado será automaticamente excluído assim que a conexão com o banco de dados for fechada.

flags

Flags opcionais usadas para determinar como abrir o banco de dados SQLite. Por padrão, abre usando SQLITE3_OPEN_READWRITE | SQLITE3_OPEN_CREATE.

encryptionKey

Uma chave de criptografia opcional usada ao criptografar e descriptografar um banco de dados SQLite. Se o módulo de criptografia SQLite não estiver instalado, este parâmetro não terá efeito.

Erros/Exceções

Lança uma Exception em caso de falha.

Registro de Alterações

Versão Descrição
7.0.10 O filename agora pode estar vazio para usar um banco de dados privado, temporário no disco.

Exemplos

Exemplo #1 Exemplo de SQLite3::__construct()

<?php
$db
= new SQLite3('mysqlitedb.db');

$db->exec('CREATE TABLE foo (bar TEXT)');
$db->exec("INSERT INTO foo (bar) VALUES ('Isto é um teste')");

$result = $db->query('SELECT bar FROM foo');
var_dump($result->fetchArray());
?>

adicione uma nota

Notas Enviadas por Usuários (em inglês) 2 notes

up
13
bohwaz
13 years ago
$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.
up
7
jtreurniet at example dot com
7 years ago
Note that the SQLITE3_OPEN_READONLY flag cannot be combined with the SQLITE3_OPEN_CREATE flag. If you combine both of these flags, a rather unhelpful "Unable to open database: out of memory" exception will be thrown.
To Top