public static function getInstance()
 {
     if (is_null(self::$instance)) {
         self::$instance = new self();
     }
     return self::$instance;
 }
 /**
  * Connecta com o banco de dados pattern singleton.
  * Retorna um objeto PDO!
  */
 private static function getInstance()
 {
     try {
         if (!isset(self::$instance)) {
             $dsn = "mysql:host=" . DB_HOST . ";dbname=" . DB_NAME;
             $options = [PDO::MYSQL_ATTR_INIT_COMMAND => 'SET NAMES UTF8'];
             self::$instance = new PDO($dsn, DB_USER, DB_PASS, $options);
             self::$instance->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
             self::$instance->setAttribute(PDO::ATTR_DEFAULT_FETCH_MODE, PDO::FETCH_OBJ);
         }
     } catch (PDOException $ex) {
         PHPErro($ex->getCode(), $ex->getMessage(), $ex->getFile(), $ex->getLine());
         die;
     }
     return self::$instance;
 }