Heim  >  Artikel  >  Backend-Entwicklung  >  Kann PHP Singleton implementieren?

Kann PHP Singleton implementieren?

藏色散人
藏色散人Original
2021-04-01 09:25:551415Durchsuche

php kann einen Singleton implementieren und seine Methode zum Implementieren eines Singletons ist: 1. Beantragen Sie eine private statische Mitgliedsvariable, um die einzige Instanz der Klasse zu speichern. 2. Deklarieren Sie einen privaten Konstruktor, um zu verhindern, dass Objekte außerhalb der Klasse erstellt werden 3. Deklaration Eine statische öffentliche Methode für den externen Zugriff auf die eindeutige Instanz.

Kann PHP Singleton implementieren?

Die Betriebsumgebung dieses Artikels: Windows 7-System, PHP-Version 7.1, DELL G3-Computer

So implementieren Sie einen Singleton in PHP

  • Wenden Sie eine private statische Mitgliedsvariable an, um die einzige Instanz zu speichern dieser Klasse

  • Deklarieren Sie einen privaten Konstruktor, um zu verhindern, dass Objekte außerhalb der Klasse erstellt werden

  • Deklarieren Sie eine statische öffentliche Methode für die externe Erfassung der einzigen Instanz

Nach Abschluss dieser drei Schritte handelt es sich um einen Singleton , aber dieser Singleton ist unsicher. Wenn Sie möchten, dass dieser Singleton sicher ist, müssen Sie die folgenden zwei Schritte ausführen (bitte hinzufügen, wenn Unvollkommenheiten vorliegen).

  • Deklarieren Sie eine private Klonmethode, um zu verhindern, dass das Objekt geklont wird

  • Schreiben Sie die __sleep-Methode in „Return to empty“ um, um zu verhindern, dass Serialisierung und Deserialisierung neue Objekte erhalten

Das obige ist der detaillierte Inhalt vonKann PHP Singleton implementieren?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn