class single{
public $hash;
static protected $ins=null;//(1). 需要一個保存類的唯一實例的靜態成員變量:
final protected function __construct()//(2). 構造函數和克隆函數必須聲明爲私有的,防止外部程序new類從而失去單例模式的意義:
{
$this->hash=mt_rand(1,100);}
static public function getInstance()(3). 必須提供一個訪問這個實例的公共的靜態方法(通常爲getInstance方法),從而返回唯一實例的一個引用
{
if(self::$ins instanceof self){return self::$ins;
}
self::$ins=new self();
return self::$ins;
}
}
var_dump(single::getInstance()) ;
var_dump(single::getInstance()) ;