DatabaseConnector.php 648 Bytes
Newer Older
thibaut-felten's avatar
thibaut-felten committed
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16
<?php

class DatabaseConnector {

    protected static $pdo = NULL;

    public static function current(){
       if(is_null(static::$pdo))
          static::createPDO();

       return static::$pdo;
    }

    protected static function createPDO() {
        // $db = new PDO("sqlite::memory");

thibaut-felten's avatar
thibaut-felten committed
17
        $connectionString = "mysql:host=". DB_HOST;
thibaut-felten's avatar
thibaut-felten committed
18 19

        if(defined('_MYSQL_PORT'))
thibaut-felten's avatar
thibaut-felten committed
20
            $connectionString .= ";port=". DB_PORT;
thibaut-felten's avatar
thibaut-felten committed
21

thibaut-felten's avatar
thibaut-felten committed
22
        $connectionString .= ";dbname=" . DB_DBNAME;
thibaut-felten's avatar
thibaut-felten committed
23

thibaut-felten's avatar
thibaut-felten committed
24
        static::$pdo = new PDO($connectionString,DB_USER,DB_PASSWORD);
thibaut-felten's avatar
thibaut-felten committed
25 26 27
        static::$pdo->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
    }
}