【发布时间】:2012-03-28 05:19:16
【问题描述】:
我正在尝试实现单例模式,但出现以下错误
致命错误:对 Database::__construct() 的访问级别必须是公共的 (如在 PDO 类中)在第 29 行的 /config/database.php 中
<?php
class Database extends PDO
{
private static $instance;
private function __construct()
{
return parent::__construct(
"mysql:host=localhost;dbname=live",
"root",
"root"
);
}
public function getInstance() {
if(self::$instance === null) {
self::$instance = new Database();
}
return self::$instance;
}
public function __clone()
{
die(__CLASS__ . ' class cant be instantiated. Please use the method called getInstance.');
}
}
$mySingleton = Database::getInstance();
var_dump($mySingleton);
?>
【问题讨论】:
-
这个问题似乎跑题了,因为错误信息解释了问题的根源。
标签: php design-patterns database-design