SQLite PHP: Conectando-se ao banco de dados SQLite a partir de PHP usando PDO

Resumo : neste tutorial mostraremos como estabelecer uma conexão com um banco de dados SQLite a partir de PHP usando PDO.

O PHP inclui a extensão SQLite por padrão, então você não precisa realizar nenhuma configuração para que funcione com o SQLite.

Configure a estrutura do projeto PHP com o Composer

Primeiro, crie uma pasta de projeto chamada   phpsqliteconnecte outra subpasta nome app. A apppasta é usada para armazenar todas as classes que tratam da lógica da aplicação e do banco de dados.

Em seguida, crie um novo composer.jsonarquivo com o seguinte código:

{
    "autoload": {
        "psr-4": {
            "App\\": "app/"
        }
    }
}Linguagem de código:  JavaScript  ( javascript )

Se você não conhece o Composer, pode conferir aqui . No PHP, usamos o compositor como ferramenta para gerenciamento de dependências. O compositor permite declarar a biblioteca em nosso projeto e gerenciar as atualizações automaticamente.

No arquivo compositor, você mapeia o Appnamespace com a /apppasta.

Em seguida, crie outro nome de subpasta dbpara armazenar o arquivo de banco de dados SQLite.

Depois disso, abra a ferramenta de comando, navegue até phpsqliteconnecte digite o seguinte comando:

composer update

A seguinte mensagem será exibida:

>composer update
Loading composer repositories with package information
Updating dependencies (including require-dev)
Nothing to install or update
Generating autoload filesLinguagem de código:  Sessão Shell  ( shell )

Além disso, o Composer cria a nova pasta vendorcom o nome mostrado na captura de tela a seguir:

Estrutura do projeto SQLite PHP Connect

Por fim, crie um arquivo nomeado index.php na pasta raiz e adicione o seguinte código:

<?php
require 'vendor/autoload.php';Linguagem de código:  PHP  ( php )

A partir de agora, se quiser usar algum classé da apppasta, basta declará-lo e utilizá-lo.

Estabeleça conexão de banco de dados com um banco de dados SQLite

Primeiro, crie um novo arquivo Config.php dentro da apppasta e adicione uma nova classe Configcom o seguinte nome:

<?php

namespace App;

class Config {
   /**
    * path to the sqlite file
    */
    const PATH_TO_SQLITE_FILE = 'db/phpsqlite.db';

}Linguagem de código:  PHP  ( php )

A constante PATH_TO_SQLITE_FILEé usada para armazenar o caminho para o arquivo de banco de dados sqlite que reside na dbpasta.

Segundo, crie um novo SQLiteConnection.phparquivo e adicione a SQLiteConnectionclasse da seguinte forma:

<?php
namespace App;

/**
 * SQLite connnection
 */
class SQLiteConnection {
    /**
     * PDO instance
     * @var type 
     */
    private $pdo;

    /**
     * return in instance of the PDO object that connects to the SQLite database
     * @return \PDO
     */
    public function connect() {
        if ($this->pdo == null) {
            $this->pdo = new \PDO("sqlite:" . Config::PATH_TO_SQLITE_FILE);
        }
        return $this->pdo;
    }
}Linguagem de código:  PHP  ( php )

Para estabelecer uma conexão de banco de dados com um banco de dados SQLite, você precisa criar uma nova instância da PDOclasse e passar uma string de conexão para o construtor do PDOobjeto.

Suponha que o arquivo de banco de dados SQLite esteja na dbpasta, você usa a seguinte string de conexão:

sqlite:db/phpsqlite.dbLinguagem de código:  PHP  ( php )

Como você armazena o caminho para o arquivo de banco de dados sqlite na Configclasse, basta usá-lo para construir a string de conexão.

Observe que quando o PHP se conecta a um banco de dados SQLite que não existe, o PHP criará um novo arquivo de banco de dados SQLite.

O $pdoé usado para armazenar a instância do PDOobjeto. No connect()método, você verifica se uma conexão com o banco de dados foi estabelecida. Caso contrário, você cria uma nova instância do objeto PDO, caso contrário, você retorna o objeto PDO.

Depois de colocar todas as classes em seus lugares, você usa o seguinte comando para gerar o arquivo autoload:

composer dump-autoload -o

Para estabelecer uma conexão com o banco de dados SQLite, use o seguinte código no index.phparquivo:

<?php

require 'vendor/autoload.php';

use App\SQLiteConnection;

$pdo = (new SQLiteConnection())->connect();
if ($pdo != null)
    echo 'Connected to the SQLite database successfully!';
else
    echo 'Whoops, could not connect to the SQLite database!';Linguagem de código:  SQL (linguagem de consulta estruturada)  ( sql )
Exemplo de conexão SQLite PHP

Se você verificar a dbpasta, verá um arquivo com o nome phpsqlite.dbcriado.

SQLite PHP Conecte novo arquivo SQLite

Quando você cria uma nova instância do PDO, ele sempre lançará uma PDOException se a conexão falhar.

Para tratar a exceção, você pode usar o try catchbloco da seguinte maneira:

try {
   $this->pdo = new \PDO("sqlite:" . Config::PATH_TO_SQLITE_FILE);
} catch (\PDOException $e) {
   // handle the exception here
}Linguagem de código:  PHP  ( php )

Neste tutorial, você aprendeu como configurar a estrutura do projeto PHP e estabelecer uma conexão de banco de dados com o banco de dados SQLite.

Deixe um comentário

O seu endereço de email não será publicado. Campos obrigatórios marcados com *