ホームページ >バックエンド開発 >PHPチュートリアル >シングルトンモードの PHP 実装_PHP チュートリアル

シングルトンモードの PHP 実装_PHP チュートリアル

WBOY
WBOYオリジナル
2016-07-14 10:08:381010ブラウズ

シングルトン パターンでは、クラスのインスタンスが 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. を提供します。
声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。