Maison développement back-end tutoriel php 每天一记之php单例模式实现

每天一记之php单例模式实现

Jun 13, 2016 pm 12:35 PM
function private

每日一记之php单例模式实现

单例模式,顾名思义就是只需要只有一个实例化对象, 在软件的设计中,单例模式是非常常用的。实例化一次,节省了大量的资源,而且单例模式在一定程度上可以替换类中引入全局变量而导致的bug。因为全局变量将类捆绑于特定的环境中。破坏了封装,这样的类很难被其他的应用程序所通用。使用单例模式则能够将类更好的组织,并且复用。

下面一起来看看php中单例模式的实现

<?php class Singleton{
	private static $instance = null;
	//构造方法使用private,防止外部初始化
	private function __construct(){
	
    }    
	/** 不容许深度复制 */
    private function __clone() {
    }
	public static function getInstance(){
		if(null === self::$instance){
			self::$instance = new self();
		}
		return self::$instance;
	}
}
Copier après la connexion



调用代码

$singleton = Singleton::getInstance();
$singleton2 = Singleton::getInstance();


var_dump($singleton === $singleton2);
Copier après la connexion



在上面的调用代码中,在最后将打印true, 这样我们就简单的实现了单例模式。




Déclaration de ce site Web
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

Outils d'IA chauds

Undresser.AI Undress

Undresser.AI Undress

Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover

AI Clothes Remover

Outil d'IA en ligne pour supprimer les vêtements des photos.

Undress AI Tool

Undress AI Tool

Images de déshabillage gratuites

Clothoff.io

Clothoff.io

Dissolvant de vêtements AI

AI Hentai Generator

AI Hentai Generator

Générez AI Hentai gratuitement.

Article chaud

R.E.P.O. Crystals d'énergie expliqués et ce qu'ils font (cristal jaune)
2 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
Repo: Comment relancer ses coéquipiers
4 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
Hello Kitty Island Adventure: Comment obtenir des graines géantes
4 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
Combien de temps faut-il pour battre Split Fiction?
3 Il y a quelques semaines By DDD

Outils chauds

Bloc-notes++7.3.1

Bloc-notes++7.3.1

Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise

SublimeText3 version chinoise

Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1

Envoyer Studio 13.0.1

Puissant environnement de développement intégré PHP

Dreamweaver CS6

Dreamweaver CS6

Outils de développement Web visuel

SublimeText3 version Mac

SublimeText3 version Mac

Logiciel d'édition de code au niveau de Dieu (SublimeText3)

Que signifie fonction ? Que signifie fonction ? Aug 04, 2023 am 10:33 AM

Fonction signifie fonction. Il s'agit d'un bloc de code réutilisable avec des fonctions spécifiques. C'est l'un des composants de base d'un programme. Il peut accepter des paramètres d'entrée, effectuer des opérations spécifiques et renvoyer des résultats. code pour améliorer la réutilisabilité et la maintenabilité du code.

Que signifie privé en Java Que signifie privé en Java Nov 24, 2022 pm 06:27 PM

En Java, private signifie « privé » et est un modificateur de contrôle d'accès utilisé pour modifier les classes, les propriétés et les méthodes. Les membres de la classe modifiés avec private ne peuvent être consultés et modifiés que par les méthodes de la classe elle-même, et ne peuvent être consultés et référencés par aucune autre classe (y compris les sous-classes de la classe, par conséquent, le modificateur private a le niveau de protection le plus élevé) ;

Explication détaillée du rôle et de la fonction de la table MySQL.proc Explication détaillée du rôle et de la fonction de la table MySQL.proc Mar 16, 2024 am 09:03 AM

Explication détaillée du rôle et de la fonction de la table MySQL.proc MySQL est un système de gestion de bases de données relationnelles populaire. Lorsque les développeurs utilisent MySQL, ils impliquent souvent la création et la gestion de procédures stockées (StoredProcedure). La table MySQL.proc est une table système très importante. Elle stocke les informations relatives à toutes les procédures stockées dans la base de données, y compris le nom, la définition, les paramètres, etc. Dans cet article, nous expliquerons en détail le rôle et les fonctionnalités de la table MySQL.proc

Quel est le but de la fonction « enumerate() » en Python ? Quel est le but de la fonction « enumerate() » en Python ? Sep 01, 2023 am 11:29 AM

Dans cet article, nous découvrirons la fonction enumerate() et le but de la fonction « enumerate() » en Python. Qu'est-ce que la fonction enumerate() ? La fonction enumerate() de Python accepte une collection de données comme paramètre et renvoie un objet d'énumération. Les objets d'énumération sont renvoyés sous forme de paires clé-valeur. La clé est l'index correspondant à chaque élément, et la valeur est les éléments. Syntaxe enumerate(iterable,start) Paramètres iterable - Les données transmises dans la collection peuvent être renvoyées sous forme d'objet d'énumération, appelé iterablestart - Comme son nom l'indique, l'index de départ de l'objet d'énumération est défini par start. si nous ignorons

Explication détaillée des modificateurs d'accès privé pour les fonctions Java Explication détaillée des modificateurs d'accès privé pour les fonctions Java Apr 25, 2024 pm 04:48 PM

Private est un modificateur d'accès Java qui restreint l'accessibilité d'une fonction uniquement à la classe dans laquelle elle est définie, notamment : la fonction n'est pas accessible dans d'autres classes. La fonction n'est pas non plus accessible dans les sous-classes.

L'utilisation et la fonction de la fonction Vue.use L'utilisation et la fonction de la fonction Vue.use Jul 24, 2023 pm 06:09 PM

Utilisation et fonction de Vue.use Function Vue est un framework frontal populaire qui fournit de nombreuses fonctionnalités et fonctions utiles. L'une d'elles est la fonction Vue.use, qui nous permet d'utiliser des plugins dans les applications Vue. Cet article présentera l'utilisation et la fonction de la fonction Vue.use et fournira quelques exemples de code. L'utilisation de base de la fonction Vue.use est très simple, il suffit de l'appeler avant que Vue ne soit instanciée, en passant le plugin que vous souhaitez utiliser comme paramètre. Voici un exemple simple : //Introduire et utiliser le plug-in

fonction file_exists() en PHP fonction file_exists() en PHP Sep 14, 2023 am 08:29 AM

La méthode file_exists vérifie si un fichier ou un répertoire existe. Il accepte comme argument le chemin du fichier ou du répertoire à vérifier. Voici à quoi il sert : c'est utile lorsque vous avez besoin de savoir si un fichier existe avant de le traiter. De cette façon, lors de la création d'un nouveau fichier, vous pourrez utiliser cette fonction pour savoir si le fichier existe déjà. Syntaxe file_exists($file_path) Paramètres file_path - Définit le chemin du fichier ou du répertoire dont l'existence doit être vérifiée. Requis. Renvoie la méthode file_exists(). Renvoie TrueFalse si le fichier ou le répertoire existe, si le fichier ou le répertoire n'existe pas. Exemple voyons une vérification du fichier "candidate.txt" et même si le fichier

A quoi sert la fonction js A quoi sert la fonction js Oct 07, 2023 am 11:25 AM

L'utilisation de la fonction js est : 1. Déclarer la fonction ; 2. Appeler la fonction ; 3. Paramètres de la fonction ; 5. Fonction anonyme ; 7. Portée de la fonction ;

See all articles