# SQLite3::open

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

SQLite3::open — Ouvre une base de données SQLite

### Description

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

Ouvre une base de données SQLite 3. Si le cryptage a été inclus lors de la construction de la base de données, la clé correspondante sera utilisée.

### Liste de paramètres

`filename`

  Chemin vers la base de données SQLite, ou `:memory:` pour utiliser la base de données se trouvant en mémoire vive.

`flags`

  Drapeaux optionnels à utiliser pour déterminer la manière d'ouverture de la base de données SQLite. Par défaut, ce sera `SQLITE3_OPEN_READWRITE | SQLITE3_OPEN_CREATE`.

  - `SQLITE3_OPEN_READONLY` : Ouvre la base de données en lecture seule.

  - `SQLITE3_OPEN_READWRITE` : Ouvre la base de données en lecture et écriture.

  - `SQLITE3_OPEN_CREATE` : Crée la base de données si elle n'existe pas.

`encryptionKey`

  La clé optionnelle de cryptage utilisée lors du cryptage/décryptage de la base de données SQLite. Si le module SQLite de cryptage n'est pas installé, ce paramètre n'aura aucun effet.

### Valeurs de retour

Aucune valeur n'est retournée.

### Exemples

Exemple #1 Exemple avec SQLite3::open()

`<?php
/**
* Exemple simple qui étend la classe SQLite3 et change les paramètres
* __construct, puis, utilise la méthode de connexion pour initialiser la
* base de données.
*/
class MyDB extends SQLite3
{
function __construct()
{
$this->open('mysqlitedb.db');
}
}
$db = new MyDB();
$db->exec('CREATE TABLE foo (bar STRING)');
$db->exec("INSERT INTO foo (bar) VALUES ('Ceci est un test')");
$result = $db->query('SELECT bar FROM foo');
var_dump($result->fetchArray());
?>`