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 phpsqliteconnect
e outra subpasta nome app
. A app
pasta é 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.json
arquivo 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 App
namespace com a /app
pasta.
Em seguida, crie outro nome de subpasta db
para armazenar o arquivo de banco de dados SQLite.
Depois disso, abra a ferramenta de comando, navegue até phpsqliteconnect
e 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 files
Linguagem de código: Sessão Shell ( shell )
Além disso, o Composer cria a nova pasta vendor
com o nome mostrado na captura de tela a seguir:
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 app
pasta, 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 app
pasta e adicione uma nova classe Config
com 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 db
pasta.
Segundo, crie um novo SQLiteConnection.php
arquivo e adicione a SQLiteConnection
classe 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 PDO
classe e passar uma string de conexão para o construtor do PDO
objeto.
Suponha que o arquivo de banco de dados SQLite esteja na db
pasta, você usa a seguinte string de conexão:
sqlite:db/phpsqlite.db
Linguagem de código: PHP ( php )
Como você armazena o caminho para o arquivo de banco de dados sqlite na Config
classe, 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 PDO
objeto. 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.php
arquivo:
<?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 )
Se você verificar a db
pasta, verá um arquivo com o nome phpsqlite.db
criado.
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 catch
bloco 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.