Maison  >  Article  >  développement back-end  >  Modèle de conception PHP modèle singleton

Modèle de conception PHP modèle singleton

不言
不言original
2018-04-18 11:42:481523parcourir

Le contenu de cet article concerne le mode singleton du modèle de conception PHP. Il a une certaine valeur de référence. Maintenant, je le partage avec vous. Les amis dans le besoin peuvent s'y référer

Mode Singleton (. Singleton) est également l'un des modes créatifs, et ce n'est pas difficile à comprendre
Après avoir lu quelques informations, l'application la plus basique est le gestionnaire de tâches.
En fait, ma compréhension personnelle est que ne peut pas créer un deuxième objet identique .

Le programme déterminera en interne si l'objet a été créé. Sinon, créez-le. S'il existe déjà, utilisez-le directement.

a réalisé quelques enregistrements simples, comme suit :

<?php  
     
    
/** Singleton  
 *  单例模式类 
 *  @static $obj 
 *  @var $hero 
 */   
class Singleton    
{    
    // 创建静态对象变量    
    private static $obj = null;    
    
    // 当前对象里面的人物  
    public $hero;    
  
    //实例化对象变量方法,供外部调用    
    public static function getInstance()    
    {    
        // 判断对象是否创建  
        if(empty(self::$obj))    
        {    
            // 如果没有创建对象 创建并保存   
            self::$obj = new Singleton();   
        }    
  
        // 如果创建了直接返回   
        return self::$obj;    
    }    
}
<?php  
// 单例模式 index.php  
header("Content-Type:text/html;charset=utf-8");  
require_once "Singleton.php";  
  
// 第一次调用实例化对象变量方法  
$single1 = Singleton::getInstance();    
// 给 hero赋值为 诸葛亮   
$single1->hero = "诸葛亮";  
echo "single1创建的英雄为:{$single1->hero}<br/>";    
  
// 第二次调用实例化对象变量方法 程序会判断出对象已经创建过,直接使用。  
$single2 = Singleton::getInstance();    
// 给hero赋值为 周瑜,会直接覆盖第一次的诸葛亮  
$single2->hero = "周瑜";    
  
echo "single1创建的英雄为:{$single1->hero}<br/>";    
  
echo "single2创建的英雄为:{$single2->hero}<br/>";


Le résultat de sortie est :

Le héros créé par single1 est : Zhuge Liang
Le héros créé par single1 est : Zhou Yu
Le héros créé par single2 est : Zhou Yu

Recommandations associées :

Usine abstraite de modèles de conception PHP

Méthode d'usine de modèles de conception PHP

Modèle de conception PHP Simple Factory

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn