ホームページ > バックエンド開発 > PHPチュートリアル > PHPオブジェクトインスタンス化シングルトンメソッドの詳細説明

PHPオブジェクトインスタンス化シングルトンメソッドの詳細説明

怪我咯
リリース: 2023-03-13 17:00:01
オリジナル
1511 人が閲覧しました

シングル ケース モード (責任モード):

簡単に言うと、オブジェクト ( デザイン パターン を学ぶ前に、オブジェクト指向の考え方について詳しく知る必要があります) は、特定のタスクのみを担当します。

シングルトン クラス:

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 つのパブリック メソッド

1 つのパブリック

public static function getinstance(){
    if(!isset(static:$_instance)){
      static::$_instance=new static();
      }
      return static::$_instance;
  }
ログイン後にコピー

以上がPHPオブジェクトインスタンス化シングルトンメソッドの詳細説明の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

関連ラベル:
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
最新の問題
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート