Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- <?php
- /**
- * Classe Connection
- * Design Patter utilizado na conexão: Singleton.
- */
- class Connection
- {
- /*
- * Única instância da conexão do PDO.
- */
- private static $conn;
- /*
- * Método construtor
- * Não existirão instâncias de TConnection, por
- * isso o construtor deve ser marcado como privado.
- */
- private function __construct() { }
- /*
- * Método clone
- * Método está privado para evitar a clonagem.
- */
- private function __clone() { }
- /*
- * Método getInstance
- * Única interface que é disponibilizado nesta classe.
- */
- public static function getInstance($driver)
- {
- if(!isset(self::$conn))
- {
- $type = 'mysql';
- switch($type)
- {
- case 'mysql':
- $dsn = array('arg1' => "mysql:host={$host};port={$port};dbname={$name};charset=utf8" ,
- 'arg2' => "{$user}",
- 'arg3' => "{$pass}");
- break;
- // (...)
- }
- self::$conn = new PDO($dsn ['arg1'], $dsn ['arg2'], $dsn ['arg3'],
- array(PDO::MYSQL_ATTR_INIT_COMMAND => "SET NAMES utf8"));
- self::$conn->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
- }
- return self::$conn;
- }
- }
- ?>
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement