class db{
private static $instance; //私有的静态变量
private $pdo = '';
//私有的构造函数
//$db_type 数据库类型 $host 主机ip $dbname 数据库名
//$root 用户名 $pwd 用户名密码
private function __construct($db_type,$host,$dbname,$root,$pwd) {
$dsn = "$db_type:host=$host;dbname=$dbname";
$this -> pdo = new PDO($dsn,$root,$pwd);
$this -> pdo -> exec("set names utf8");
}
//私有的克隆方法
private function __clone() {}
//公有的静态方法
public static function getInstance($db_type,$host,$dbname,$root,$pwd){
if(!(self::$instance instanceof self)){
self::$instance = new db($db_type,$host,$dbname,$root,$pwd);
}
return self::$instance;
}
}
类外调用
$pdo = db::getInstance('mysql','localhost',‘dbname’,'root','root');