Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- <?
- class Pdo_connect {
- private const HOST = "localhost"; //protected - область видимости для использования в данном классе и потомках
- private const CHARSET = "utf-8"; //private - область видимости для использования только в данном классе
- private const DB = "halloween"; //public - область видимости для использования в любом месте, везде
- private const USER = "halloween";
- private const PASS = "halloween";
- protected $DSN; //data source name (включает в себя HOST, DB, CHARSET)
- protected $OPD; //настройка, конфигурация
- public $PDO;
- private function __construct() {
- $this->DSN = "mysql:host=" . SELF::HOST . ";dbname" . SELF::DB . ";charset=" . SELF::CHARSET;
- $this->OPD = [
- PDO::ATTR_ERRMODE => PDO::ERRMODE_EXCEPTION,
- PDO::ATTR_DEFAULT_FETCH_MODE => PDO::FETCH_ASSOC,
- PDO::ATTR_EMULATE_PREPARES => false
- ];
- $this->PDO = new PDO($this->DSN, SELF::USER, SELF::PASS, $this->OPD);
- }
- // Singleton - позволяет не создавать кучу одинаковых классов
- // при подключении к БД, а использовать один класс
- protected static $instance;
- public static function getInstance()
- {
- if (self::$instance === null) {
- self::$instance = new self;
- }
- return self::$instance;
- }
- private function __clone() {}
- private function __wakeup() {}
- }
- ?>
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement