php 单例模式
<?phpclassDatabase{private$_db;static$_instance;privatefunction__construct(){mysql_pc...
<?php
class Database{
private $_db;
static $_instance;
private function __construct(){
mysql_pconnect('127.0.0.1','root','123456');
mysql_select_db('blog');
mysql_query('set names utf8');
}
private function __clone(){}
public static function getInstance(){
if(!self::$_instance instanceof self){
self::$_instane=new self();
}
return self::$_instance;
}
public function query($sql){
//使用$this->_db执行一个查询
return mysql_query($sql);
}
}
$db=Database::getInstance();
$db->query('select * from user');
?>
我在clone前加上function还是不对 展开
class Database{
private $_db;
static $_instance;
private function __construct(){
mysql_pconnect('127.0.0.1','root','123456');
mysql_select_db('blog');
mysql_query('set names utf8');
}
private function __clone(){}
public static function getInstance(){
if(!self::$_instance instanceof self){
self::$_instane=new self();
}
return self::$_instance;
}
public function query($sql){
//使用$this->_db执行一个查询
return mysql_query($sql);
}
}
$db=Database::getInstance();
$db->query('select * from user');
?>
我在clone前加上function还是不对 展开
2个回答
推荐于2017-09-21 · 知道合伙人软件行家
关注
展开全部
单例模式是一种常用的软件设计模式,可以保证系统中一个类只有一个实例,从而达到节约系统资源提升特殊类使用效率的目的
php实现单例模式的方法
class A {
//静态属性
private static $_instance;
//空的克隆方法,防止被克隆
private function __clone() {}
//获取实例
public static function getInstance() {
if(!(self::$_instance instanceof self)) {
self::$_instance = new A();
}
return self::$_instance;
}
}
//调用
$obj = A::getInstance();
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询
广告 您可能关注的内容 |