Aula 03 - Conexão com o banco




Chegou a hora de colocar a mão na massa e começar a criar nosso CRUD, para isso temos que iniciar com a conexão, lógico, pois sem ela nada vai acontecer.

Estou fazendo a conexão um pouco diferente nesse curso, estou pegando os dados para conectar vindos de um arquivo.ini, onde dentro da classe de conexão dou um parse nele e recupero seus dados.

database.ini

driver = 'mysql'
host = 'localhost'
database = 'loja'
username = 'root'
password = 'root'

connection.php

namespace Asw\Database;

use PDO;

class Connection{

    const INIFILE = './config/database.ini';
    private $iniData;

    public function __construct(){
        $this->iniData = parse_ini_file(self::INIFILE);
    }

    public function connection(){
        $pdo = new PDO($this->iniData['driver'].':host='.$this->iniData['host'].';dbname='.$this->iniData['database'], $this->iniData['username'], $this->iniData['password']);
        $pdo->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
        $pdo->setAttribute(PDO::ATTR_DEFAULT_FETCH_MODE, PDO::FETCH_OBJ);
        return $pdo;
    }
}

composer.json

{
    "require": {
        "symfony/var-dumper": "^2.7"
    },
    "autoload":{
        "psr-4": {
            "Acme\\Classes\\" : "Acme/Classes",
            "Acme\\Models\\" : "Acme/Models",
            "Acme\\Interfaces\\" : "Acme/Interfaces",
            "Asw\\Database\\" : "Asw/Database"
        }
    }
}