Синглтон для БД MySQL

Discussion in 'PHP' started by rudi, 24 Dec 2016.

  1. rudi

    rudi Active Member

    Joined:
    3 Jun 2010
    Messages:
    492
    Likes Received:
    187
    Reputations:
    5
    Привет.
    Имеем MySQL установлена локально
    PHP Version 5.6.17
    Имеем БД chat
    Имеем логин и пароль root : pasword
    Пытаюсь сделать Синглтон для работы с БД через PDO
    на строчке
    self::$DBH = new PDO("mysql:host=127.0.0.1;dbname=chat", "root", "password");
    вылетает ошибка. Подскажите в чем может быть причина?

    PHP:
    <?php
    namespace core\repository;

    class 
    Repository {
        protected static 
    $DBH;

        public static function 
    getInstance(){
            if(
    self::$DBH === null) {
                
    self::$DBH = new self;
            }
            return 
    self::$DBH;
        }

        private function 
    __construct() {
            try{
                
    //Тут ошибка
                
    self::$DBH = new PDO("mysql:host=127.0.0.1;dbname=chat""root""password");
            } catch (\
    PDOException $e) {
                
    file_put_contents('PDOErrors.txt'$e->getMessage(), FILE_APPEND);
            }
        }

        
    //Закрываем иные типы создания экземпляра класса
        
    final private function __clone() {}
        final private function 
    __sleep() {}
        final private function 
    __wakeup() {}
    }
     
    #1 rudi, 24 Dec 2016
    Last edited: 24 Dec 2016
  2. ComradKraken

    ComradKraken Member

    Joined:
    15 Dec 2016
    Messages:
    46
    Likes Received:
    36
    Reputations:
    3
  3. rudi

    rudi Active Member

    Joined:
    3 Jun 2010
    Messages:
    492
    Likes Received:
    187
    Reputations:
    5
    все дело оказалось в namespace core\repository; (пространстве имен)
    Перед PDO слеует поставить обратную косую черту, тем самым мы обратимся к PDO в контексте глобального пространства имен
    self::$DBH = new \PDO("mysql:host=127.0.0.1;dbname=chat", "root", "password");
     
    ComradKraken likes this.
Loading...
Similar Threads - Синглтон MySQL
  1. GAiN
    Replies:
    3
    Views:
    7,639