ホームページ >バックエンド開発 >PHPチュートリアル >PHP シングルトン モードとは何ですか? PHP でシングルトン モードを実装する方法、php モード_PHP チュートリアル

PHP シングルトン モードとは何ですか? PHP でシングルトン モードを実装する方法、php モード_PHP チュートリアル

WBOY
WBOYオリジナル
2016-07-12 08:51:55692ブラウズ

PHPシングルトンモードとは何ですか?PHPでシングルトンモードを実装する方法、phpモード

1.シングルトンモードとは何ですか?
1. 意味
オブジェクト作成モードとして、シングルトン モードは、特定のクラスがインスタンスを 1 つだけ持つことを保証し、それ自体をインスタンス化し、このインスタンスをシステム全体にグローバルに提供します。インスタンスのコピーは作成されませんが、シングルトン クラスの内部に格納されているインスタンスへの参照を返します。
2. シングルトン モードの 3 つの重要なポイント:
(1) クラスの唯一のインスタンスを保持する静的メンバー変数が必要です:
プライベート静的 $_インスタンス
(2). 外部プログラムが新しいクラスを作成してシングルトン モードの意味を失うことを防ぐために、コンストラクターとクローン関数をプライベートとして宣言する必要があります。
リーリー

(3)。このインスタンスにアクセスするには、パブリック静的メソッド (通常は getInstance メソッド) を提供する必要があります。これにより、一意のインスタンスへの参照が返されます。

リーリー

2. シングルトン モードを使用する理由は何ですか?

1. PHP の欠点:
PHP 言語は解釈されたスクリプト言語です。この操作メカニズムにより、各 PHP ページが解釈および実行された後に、関連するすべてのリソースがリサイクルされます。言い換えれば、PHP には言語レベルでオブジェクトをメモリに常駐させる方法がありません。これは、たとえば Java では、ライフサイクル全体を通じて常に存在します。変数はページ間レベルであり、アプリケーションのライフサイクル内でこのインスタンスを真に一意にすることができます。ただし、PHP では、グローバル変数であろうとクラスの静的メンバーであろうと、すべての変数はページ レベルであり、ページが実行されるたびに新しいオブジェクトが再確立され、ページの実行後にクリアされます。 PHP のシングルトン モードは意味がないようなので、単一のページ レベルのリクエストで複数のアプリケーション シナリオが発生し、同じオブジェクト リソースを共有する必要がある場合にのみ、PHP シングルトン モードが非常に意味があると思います。

2. PHP でのシングルトン モードの適用場面:
(1)、アプリケーションとデータベースの相互作用
アプリケーションでは、データベース ハンドルを介してデータベースに接続するなど、多数のデータベース操作が行われます。これは、新しい操作のたびにメモリ リソースとシステム リソースが消費されるため、シングルトン モードを使用すると、大量の新しい操作を回避できます。 。
(2)、制御設定情報
特定の構成情報をグローバルに制御するためにシステム内でクラスが必要な場合は、シングルトン パターンを使用して簡単に実装できます。

3. シングルトンモードを実装するには?


1. 通常のデータベースアクセス例: リーリー

2. シングルトンモードを適用してデータベースを操作します:
リーリー
次のコードは、シングルトン モードを使用した PDO 操作データベース クラスのカプセル化です。

リーリー

呼び出し方法:

リーリー

以上がこの記事の全内容です。PHP プログラミングを学習する皆さんのお役に立てれば幸いです。

http://www.bkjia.com/PHPjc/1127902.html

www.bkjia.com本当http://www.bkjia.com/PHPjc/1127902.html技術記事 PHP シングルトン モードとは何ですか? PHP モードでシングルトン モードを実装するにはどうすればよいですか? 1. シングルトン モードとは何ですか? 1. 意味 シングルトンモードは、オブジェクト作成モードとして、特定のクラスが 1 つだけを持つことを保証します...
声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。