Maison >développement back-end >tutoriel php >Modèle de conception PHP : une brève discussion du modèle PHP singleton (avec code)

Modèle de conception PHP : une brève discussion du modèle PHP singleton (avec code)

不言
不言original
2018-08-04 14:45:252754parcourir

Que sont les modèles de conception ? Un modèle est une solution à des problèmes similaires dans un environnement spécifique. C'est la base d'un logiciel orienté objet réutilisable. Il existe donc de nombreux modèles de conception PHP. Aujourd'hui, je vais vous parler de l'implémentation d'un modèle singleton.

Concept :

Les modèles de conception représentent les meilleures pratiques et sont généralement adoptés par les développeurs de logiciels orientés objet expérimentés. Les modèles de conception sont des solutions aux problèmes courants rencontrés par les développeurs de logiciels au cours du processus de développement de logiciels. Ces solutions sont le résultat d’essais et d’erreurs effectués par de nombreux développeurs de logiciels sur une longue période.

Définition du modèle singleton php
Le mode PHP singleton est un modèle de conception de logiciel PHP couramment utilisé. Il ne contient qu’une seule classe spéciale appelée singleton dans sa structure de base. Le mode PHP singleton peut garantir que la classe à laquelle ce mode est appliqué dans le système n'a qu'une seule instance. Le mode PHP singleton s'instancie et fournit cette classe instanciée à l'ensemble du système.

Code du mode php singleton :

<?php
    class preferences
    {
        private $props = array();        
        private static $instance;        
        private function __construct(){}        
        public static function getInstance()
        {
            if(empty(self::$instance))
            {                
            self::$instance = new preferences();
            }            
            return self::$instance;
        }        
        public function setProperty($key,$value)
        {
            $this->props[$key] = $value;
        }        
        public function getProperty($key)
        {
            return $this->props[$key];
        }
    }    $ref = preferences::getInstance();    
    $ref->setProperty(&#39;name&#39;,&#39;ypp&#39;);    
    unset($ref);//移除引用
    //var_dump(preferences::getInstance());
    // echo $ref->getProperty(&#39;name&#39;);
    $ref2 = preferences::getInstance();//值并未丢失
    echo $ref2->getProperty(&#39;name&#39;); //这里输出ypp

Résumé
En définissant une classe, définissez un constructeur privé, comme ceci L'extérieur world ne peut pas accéder aux attributs et aux méthodes de cette classe via l'instanciation. Définissez ensuite une méthode statique dans la classe et instancier la classe en accédant à cette méthode statique. De cette façon, les attributs et les méthodes de cette classe peuvent être globalement accessibles et fournis au. système entier. Fournissez cette classe.

Articles connexes recommandés :

Qu'est-ce que le mode PHP singleton ? Comment PHP implémente-t-il le mode PHP singleton ?

Modèle de conception PHP modèle singleton

code de modèle de modèle de conception php singleton, modèle de conception php

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