シングルトン パターンでは、クラスのインスタンスが 1 つだけ存在することが保証されます。
1. 静的メンバー変数はクラスの唯一のインスタンスを保存します
2. 新しいインスタンスを防ぐためにコンストラクターとクローンメソッドをプライベートとして宣言します
3. このインスタンスにアクセスし、一意のインスタンスへの参照を返すためのパブリック静的メソッドを提供します
クラスインスタンスデモ
{
private static $_instance;//静的メンバー変数は唯一のインスタンスを保存します
プライベート関数 __construct()//コンストラクター関数
{
「私は構築されています」をエコーします;
}
パブリック静的関数GetInstance()
{
if(!isset(self::$_instance))
{
$c=__CLASS__;
$ Self :: $ _instance = new $ c // 新しい self ()
;
}
return self::$_instance;
}
//__clone() メソッドをオーバーライドし、クローン作成を禁止します
プライベート関数 __clone()
{
エコー「クローン禁止」;
}
関数テスト()
{
echo("テスト インスタンス");
}
}
//静的 public メソッドを呼び出して唯一のインスタンスを取得します
$test = InstanceDemo::GetInstance();
$test->test();
//クローンは禁止されています
$test_clone = クローン $test;
?>
http://www.bkjia.com/PHPjc/477767.htmlwww.bkjia.com本当http://www.bkjia.com/PHPjc/477767.html技術記事シングルトン パターンでは、クラスにインスタンスが 1 つだけ存在することが保証されます。 1. 静的メンバー変数は、クラスの唯一のインスタンスを保存します。 2. コンストラクターとクローン メソッドをプライベートとして宣言し、新しいインスタンスを防止します。 3. を提供します。