Heim >Backend-Entwicklung >PHP-Tutorial >Über die Implementierung des Singleton-Musters in PHP
Da ich früher Java-Entwicklung gemacht habe, dachte ich bei der Verwendung des Singleton-Modus zuerst daran, den hungrigen chinesischen Stil zu verwenden, und dann stellte ich fest, dass es in PHP eine solche Funktion gibt: weil PHP nicht unterstützt wird Zuweisen der Klasse zu der Klasse, wenn sie definiert ist, werden Werte von Nicht-Basistypen zugewiesen. Wie Ausdrücke, neue Operationen usw. Stattdessen wollte ich die Atomizität dieses Singleton-Modus sicherstellen und stellte fest, dass es in PHP keine Thread-Sicherheitsprobleme wie in JAVA gibt.
Hey, denkst du, dass PHP gut ist? OK, dann probieren wir den Lazy-Singleton-Modus von PHP aus.
Verwandte Empfehlungen: „PHP-Tutorial“
1. Drei private und ein öffentliches:
①, private statische Attribute , Speichern Sie dann das generierte eindeutige Objekt
②, privaten Konstruktor
③, private Klonfunktion, um das Klonen zu verhindern - Klonen
④, öffentliche statische Methode für den Zugriff. Objekte werden statisch gespeichert Attribute. Wenn kein Objekt vorhanden ist, wird dieser Singleton generiert
2. Schlüsselwort Instanz von
Überprüfen Sie, ob diese Variable ein Objekt oder eine Unterklasse dieser Klasse ist, oder implementieren Sie die Schnittstelle.
1. Eine Singleton-Klasse kann nicht in anderen Klassen instanziiert werden und kann nur von sich selbst instanziiert werden.
2.
3. Eine statische öffentliche Methode wird verwendet, um diese Klasse zu instanziieren und auf Instanzen dieser Klasse zuzugreifen;
class SingleInstance{ private function _construct(){ } private static $instance; private function _clone(){ } public static function getInstance(){ if(!self::$instance instanceof SingleInstance){ self::$instance=new SingleInstance(); } return self ::$instance; } }
Das obige ist der detaillierte Inhalt vonÜber die Implementierung des Singleton-Musters in PHP. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!