Damit eine Klasse nur eine Instanz haben darf, gibt es kein Klonen
Klasse Single{
//Statische Methoden können nur auf statische Variablen verweisen
private static $_instance;
//防止外部使用new创建对象,单例类不能在其它类实例化,只能被自身类实例化
Nach dem Login kopieren
private function __construct(){
echo 'this is a only ';
}
//需要获取静态方法,返回唯一实例的引用
Nach dem Login kopieren
öffentliche statische Funktion getInstance(){
if (!(self ::$_instance exampleof self)){
self::$_instance =new self;
}
Return Self:: $_Instance; >Hauptanwendungen:
1. Datenbankanwendung: Verwenden Sie Singletons, um eine Menge neuer Ressourcen zu vermeiden
2 Das System benötigt globale Klassen, um
bestimmte Konfigurationsinformationen zu steuern
3. Seitenanforderung für einfaches Debuggen
$dan1=Single::$_instance;
//dan2和dan1对象完全一样,但由于dan1的静态方法已经创建自身实例,
//所以dan2只是返回实例引用
$dan2=Single::$_instance;
Nach dem Login kopieren
if($danli===$dandi){
echo 'total'; //完全相等
}
Nach dem Login kopieren
Das Obige stellt das PHP-Designmuster-Singleton vor, einschließlich Aspekten des Inhalts. Ich hoffe, es wird für Freunde hilfreich sein, die sich für PHP-Tutorials interessieren.