PDO实例是否应该是静态的

时间:2015-11-29 05:23:22

标签: php mysql pdo

我已经完成了一些关于stackoverflow的研究,比如this question [他们谈论OOP的观点]和其他人。但是,没有一个人能够回答我的问题。我也想知道每个人的利弊。我现在拥有的是DB类:

class DB extends DBWrapper{

    private static $pdo = null;

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

    private static function PDOConnect(){
        try{
            self::$pdo = new \PDO('mysql:host='.DB_HOST.';dbname='.DB_NAME, DB_USER, DB_PASS);
            self::$pdo->setAttribute(\PDO::ATTR_ERRMODE, \PDO::ERRMODE_EXCEPTION);
            self::$pdo->setAttribute(\PDO::ATTR_EMULATE_PREPARES, false);
        } catch (\Exception $e){
            die("Database Connection Failed");
        }
    }
}

0 个答案:

没有答案