单例设计模式确保应用程序在运行时仅创建 1 个对象。
如果应用程序中需要多次使用同一个对象,我们可以防止它一遍又一遍地创建实例。我们可以通过使用静态和单例设计模式来实现这一点。
如果该对象之前已创建,则通过该对象继续其生命,如果没有,则通过创建新对象来继续其生命。
内存中通过 ram 工作。
建议创建私有构造函数。
class dbcontroller { private static $instance; public static $db; private function __construct() { $this->db = new pdo("mysql:host=localhost;dbname=***;", "root", ""); } public static function getinstance() { if (!isset(self::$instance)) { self::$instance = new dbcontroller; } return self::$instance; } public function dbconnection() { if (!isset(self::$db)) { self::$db = new pdo("mysql:host=localhost;dbname=***;", "root", ""); } return self::$db; } }
$cont1 = DbController::getInstance(); $cont2 = DbController::getInstance(); var_dump($cont1); var_dump($cont2); if ($cont1 === $cont2) echo 'Same';