Skip to content

⚡ RMM ⚡Simples abstração de banco de dados em Php 8.x usando conector PDO

License

Notifications You must be signed in to change notification settings

ricardo-melo-martins/pdo-wrapper

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

15 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

⚡ RMM ⚡

pdo-wrapper

Simples abstração de banco de dados em Php 8.x usando conector PDO

Requisitos

  • PHP 8.x
  • extensões do PDO habilitadas no php.ini pdo_sqlite, pdo_mysql e pdo_pgsql
  • Docker (opcional)

Características

Funciona com os seguintes bancos de dados

  • Sqlite
  • Mysql
  • Postgre

Como utilizar

if (! defined('RMM_VERSION')) {
    require_once dirname(dirname(__DIR__)) . '/autoload.php';
}

use RMM\Database;

$config = [
    'sqlite'=> [
        'driver' => 'sqlite',
        'database' => './examples/sqlite/data/Chinook.db',
    ]
];

try {

    $db = new Database($config['sqlite']);

    $db->connect();

} catch (\Throwable $th) {
    print_r($th->getMessage());
    exit;
}


$connection = $db->getConnection();

E voilá, tem uma conexão com o banco.

Exemplo de consulta usando a conexão criada

$connection = $db->getConnection();

$stmt = $connection->query("SELECT EmployeeId, FirstName, LastName, Title FROM Employee");

foreach ($stmt as $row) {
    echo($row['EmployeeId'].' | '.$row['FirstName'].' | '.$row['LastName'].' | '.$row['Title'] . PHP_EOL );
}

unset($db);

Exemplos

No diretório examples contém exemplos de conexão com bancos de dados diferentes usando dados de exemplo

Considere utilizar o Docker para validar facilmente os exemplos para Mysql e Postgres

Para rodar exemplo 1 [SQLITE]

$ php ./examples/sqlite/connect.php

Retorno será algo como isso aqui

Exemplo 1

Para rodar exemplo 2 [MYSQL]

$ php ./examples/mysql/connect.php

Retorno será algo como isso aqui

Exemplo 2

Para rodar exemplo 3 [POSTGRES]

$ php ./examples/pgsql/connect.php

Retorno será similar ao anterior (mysql)

Docker

É possível encontrar os scripts e ou bancos de dados para rodar em docker estes exemplos em:

https://github.com/ricardo-melo-martins/docker

Lá tem as instruções para "subir" os dumps em poucos comandos

Para utilizar as configurações do exemplo, acesse o diretório

$ cd .docker/

Faça uma copia do arquivo de exemplo

$ cp .env.example .env

As variáveis já possuem usuário e senha usados nos exemplos, mas é possível alterar como quiser. Se alterar apenas lembre-se de mudar em examples/config/config.php para que os exemplos continuem funcionando.

Seguindo as instruções terá algo como isso no Docker Desktop ...

containers

Agora é só rodar os exemplos.

About

⚡ RMM ⚡Simples abstração de banco de dados em Php 8.x usando conector PDO

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages