$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.(PHP 5 >= 5.3.0, PHP 7, PHP 8)
SQLite3::__construct — Instancia um objeto SQLite3 e abre um banco de dados SQLite 3
$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.
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.
       
          SQLITE3_OPEN_READONLY: Abre o banco de dados apenas para
          leitura.
         
          SQLITE3_OPEN_READWRITE: Abre o banco de dados para
          leitura e escrita.
         
          SQLITE3_OPEN_CREATE: Cria o banco de dados se ele
          não existir.
         
encryptionKeyUma 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.
Lança uma Exception em caso de falha.
| Versão | Descrição | 
|---|---|
| 7.0.10 | O filenameagora pode estar vazio para usar um banco de dados privado,
       temporário no disco. | 
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());
?>$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.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.