シングル ケース モード (責任モード):
簡単に言うと、オブジェクト ( デザイン パターン を学ぶ前に、オブジェクト指向の考え方について詳しく知る必要があります) は、特定のタスクのみを担当します。
シングルトン クラス:
1 コンストラクターはプライベートとしてマークする必要があります (アクセス制御: 外部コードがオブジェクトを作成するために new 演算子を使用することを防ぐため)。シングルトン クラスは他のクラスでインスタンス化できず、それ自体でのみインスタンス化できます。 2. クラスのインスタンスを保存する静的メンバー変数を用意します
3. このインスタンスにアクセスするためのパブリック静的メソッドを用意します (通常、getInstance() メソッドはシングルトン クラスをインスタンス化するために使用され、instanceof 演算子はクラスがインスタンス化されているかどうかを検出します)) さらに、オブジェクトがコピー (クローン作成) されるのを防ぐために clone() メソッドを作成する必要があります なぜ PHP シングルトン モードを使用するのでしょうか? 1. PHP のアプリケーションは主にデータベース アプリケーションにあるため、アプリケーション内で多数のデータベース操作
が行われるため、新しい操作による大量のリソースの消費を回避できます。2. システム内の特定の構成情報をグローバルに制御するためにクラスが必要な場合は、ZF の FrontController セクションにあるシングルトン モードを使用して簡単に実装できます。
3. ページリクエストでは、すべてのコード (データベース操作クラス db など) が 1 つのクラスに集中しているため、クラス内にフックを設定し、どこでも var_dump や echo を回避できるため、デバッグが簡単です。 この記事では、PHP でオブジェクト
シングルのインスタンスを作成する方法を主に紹介します。これは非常に参考になります。エディターで見てみましょう
PHP がオブジェクト シングルトンをインスタンス化する方法:
3 つ。プライベートと 1 つのパブリック: 2 つのプライベート メソッド、1 つのプライベート
プロパティ、1 つのパブリック メソッド private function construct(){} //不可以继承构造方法
private function clone(){}//不可以继承克隆方法
privare static $_instance;
public static function getinstance(){ if(!isset(static:$_instance)){ static::$_instance=new static(); } return static::$_instance; }
以上がPHPオブジェクトインスタンス化シングルトンメソッドの詳細説明の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。