php单例模式

class databaseConnect
{
private static $_instance=null;
private static $_count;

//禁止析构函数重载

private final function __construct()
{
//数据库连接代码
self::$_count +=1;
echo'实例化了'.self::$_count.'次';
}
//禁止克隆
//private function __clone(){}

public function getInstance()
{
if(!(self::$_instance)){
self::$_instance=new databaseConnect();
}
return self::$_instance;
}
}

$conn = databaseConnect::getInstance();
$conn = databaseConnect::getInstance();
$conn = databaseConnect::getInstance();

 

不阻止克隆的话下面的子类可以无限的克隆实例
class aaa extends databaseConnect
{


public function getInstance(){
for($i=1;$i<=1000000;$i++){
$a=clone databaseConnect::getInstance();

}

}
}

aaa::getInstance();

转载于:https://www.cnblogs.com/lichihua/p/7048367.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值