ホームページ > バックエンド開発 > PHPの問題 > PHPシングルトンモードとはどういう意味ですか?

PHPシングルトンモードとはどういう意味ですか?

Guanhui
リリース: 2023-02-28 22:46:01
オリジナル
2588 人が閲覧しました

PHPシングルトンモードとはどういう意味ですか?

php シングルトン モードとは何ですか?

クラスにはインスタンスが 1 つだけあり、インスタンス化後にプログラム全体に提供されます。または、プログラム全体の実行中にこのクラスのインスタンスが 1 つだけ存在することを保証し、それにアクセスできるグローバル アクセス ポイントを提供すると理解することもできます。

#php シングルトン モードの例

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

class Singleton {

    private static $_instance;//保存实例化出来的单例

//构造函数私有化,确保单例类不能通过其它对象 new 出来

    private final function __construct() {}

//定义私有的__clone()方法,这是确保单例类不能被复制或克隆,否则又不是单例了。

    private function __clone() {}

    public static function getInstance() {

//检测类是否被实例化,如果没有实例化,就 new 一下,已经实例化就直接返回。

        if ( ! (self::$_instance instanceof self) ) {

            self::$_instance = new test();

        }

        return self::$_instance;

    }

}

 

//拿到单例实例,多次调用都是同一个实例

Singleton::getInstance();

ログイン後にコピー

利点

1. 提供される達成制御固有のインスタンスへのアクセス。

2. システム メモリにはオブジェクトが 1 つだけあるため、システム リソースを節約できます。頻繁に作成および破棄する必要がある一部のオブジェクトの場合、シングルトン モードは間違いなくシステムのパフォーマンスを向上させることができます。

欠点

1. シングルトン パターンは共通のクラス パターンを破壊し、抽象化層がないため、拡張が非常に困難です。

2. シングルトン モードは、実行時に一意性を維持し、グローバルにアクセスできるようにするために、グローバル変数を汚染します。

以上がPHPシングルトンモードとはどういう意味ですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

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