PHP单例的实现详解编程语言

<?php 
 class Single{ 
static public $Instance=null;//用于保存一个类的对象 
public $hash=null; 
final protected function __construct(){//final实现了不能重写,protected实现了不能new对象的功能 
$this->hash = mt_rand(1,99999);//生成一个随机的数,用于判断是否是同一个对象 
} 
static public function setInstance(){//静态方法确保对象还没有的状态下也能调用 
if(self::$Instance instanceof self){//判断是否是类的对象 
return self::$Instance; 
} 
self::$Instance=new self(); 
return self::$Instance; 
} 
} 
 
$men=Single::setInstance();//调用静态方法,实现了一个对象的创建 
$men1=Single::setInstance();//返回的一个对象通过$hash来判断是否是同一个对象 
echo "
"; 
	 
		print_r($men); 
		echo '<hr/>'; 
		print_r($men1); 
		echo '<hr/>'; 
 
	echo "

";

 

原创文章,作者:ItWorker,如若转载,请注明出处:https://blog.ytso.com/tech/pnotes/15111.html

(0)
上一篇 2021年7月19日 17:32
下一篇 2021年7月19日 17:32

相关推荐

发表回复

登录后才能评论