Table des matières
Php面向对象 – 单例模式
Maison développement back-end tutoriel php Php面向对象 – 单例模式_PHP教程

Php面向对象 – 单例模式_PHP教程

Jul 13, 2016 am 10:19 AM
对象 模式

Php面向对象 – 单例模式

Php面向对象 – 单例模式

保证类只有一个实例

1. 如何可以解决一个类可以被无限地实例化?

New,就能实例化一次,怎么去限制,用户不能无限次地new?

将构造方法私有化。所有外部的new都操作失败

class MySQLDB

{

private function __construct()

{

}

}

2. 一旦构造方法私有化,意味着类不能再类外实例化。但可以在类内实例化。

增加一个公共的静态方法,通过类来调用该方法,在方法内可以执行new操作。

class MySQLDB

{

private function __construct()

{

}

public static function getInstance()

{

return new MySQLDB;

}

}

$o = MySQLDB::getInstance();

此时,用户需要该类的对象,方法内的代码就会执行,因此,我们可以通过完善方法内的逻辑,限制用户得到对象的操作。

3. 在上面的方法内,使用这样的逻辑:每次执行时做判断,判断该类是否已经实例化对象,如果实例化了,则直接返回这个实例化好的对象。如果没有实例化,则实例化一个新的,然后返回。

如何判断?

在这个对象被实例化出来时,保存起来。

例子:

class MySQLDB

{

private static $instance;

private function __construct()

{

}

public static function getInstance()

{

if(!self::$instance instanceof self)

{

self::$instance= new self;

}

return self::$instance;

}

}

4. 克隆也可以得到新对象,因此需要限制克隆。

私有化 __clone()方法

class MySQLDB

{

private static $instance;

private function __construct()

{

}

private function __clone()

{

}

public static function getInstance()

{

if(!self::$instance instanceof self)

{

self::$instance= new self;

}

return self::$instance;

}

}

www.bkjia.comtruehttp://www.bkjia.com/PHPjc/871193.htmlTechArticlePhp面向对象 – 单例模式 Php面向对象 – 单例模式 保证类只有一个实例 1. 如何可以解决一个类可以被无限地实例化? New,就能实例化一次...
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

Video Face Swap

Video Face Swap

Échangez les visages dans n'importe quelle vidéo sans effort grâce à notre outil d'échange de visage AI entièrement gratuit !

Article chaud

<🎜>: Bubble Gum Simulator Infinity - Comment obtenir et utiliser les clés royales
4 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
<🎜>: Grow A Garden - Guide de mutation complet
3 Il y a quelques semaines By DDD
Nordhold: Système de fusion, expliqué
4 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
Mandragora: Whispers of the Witch Tree - Comment déverrouiller le grappin
3 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌

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)

Sujets chauds

Tutoriel Java
1675
14
Tutoriel PHP
1278
29
Tutoriel C#
1257
24
À quoi sert le mode Ne pas déranger de WeChat ? À quoi sert le mode Ne pas déranger de WeChat ? Feb 23, 2024 pm 10:48 PM

Que signifie le mode Ne pas déranger de WeChat ? De nos jours, avec la popularité des smartphones et le développement rapide de l'Internet mobile, les plateformes de médias sociaux sont devenues un élément indispensable de la vie quotidienne des gens. WeChat est l’une des plateformes de médias sociaux les plus populaires en Chine, et presque tout le monde possède un compte WeChat. Nous pouvons communiquer avec nos amis, notre famille et nos collègues en temps réel via WeChat, partager des moments de notre vie et comprendre la situation actuelle de chacun. Cependant, à notre époque, nous sommes également inévitablement confrontés aux problèmes de surcharge d'informations et de fuite de la vie privée, en particulier pour ceux qui ont besoin de se concentrer ou de se concentrer.

A quoi sert le mode veille sur iPhone ? A quoi sert le mode veille sur iPhone ? Nov 04, 2023 am 11:13 AM

Les appareils iOS sont depuis longtemps capables de suivre vos habitudes de sommeil et bien plus encore grâce à l'application Santé. Mais n’est-ce pas ennuyeux d’être dérangé par des notifications pendant que vous dormez ? Ces notifications peuvent ne pas être pertinentes et donc perturber vos habitudes de sommeil. Bien que le mode Ne pas déranger soit un excellent moyen d'éviter les distractions pendant votre sommeil, il peut vous faire manquer des appels et des messages importants que vous recevez pendant la nuit. Heureusement, c'est là qu'intervient le mode veille. Apprenons-en plus à ce sujet et comment l'utiliser sur iPhone. Quel rôle joue le mode veille sur l'iPhone ? Le mode veille est un mode de concentration dédié dans iOS qui est automatiquement activé en fonction de votre horaire de sommeil dans l'application « Santé ». Cela vous aide à définir une alarme, puis

Convertissez un tableau ou un objet en chaîne JSON à l'aide de la fonction json_encode() de PHP Convertissez un tableau ou un objet en chaîne JSON à l'aide de la fonction json_encode() de PHP Nov 03, 2023 pm 03:30 PM

JSON (JavaScriptObjectNotation) est un format d'échange de données léger qui est devenu un format courant pour l'échange de données entre applications Web. La fonction json_encode() de PHP peut convertir un tableau ou un objet en chaîne JSON. Cet article explique comment utiliser la fonction json_encode() de PHP, y compris la syntaxe, les paramètres, les valeurs de retour et des exemples spécifiques. Syntaxe La syntaxe de la fonction json_encode() est la suivante : st

Le mode Ne pas déranger ne fonctionne pas sur iPhone : correctif Le mode Ne pas déranger ne fonctionne pas sur iPhone : correctif Apr 24, 2024 pm 04:50 PM

Même répondre à des appels en mode Ne pas déranger peut être une expérience très ennuyeuse. Comme son nom l'indique, le mode Ne pas déranger désactive toutes les notifications d'appels entrants et les alertes provenant d'e-mails, de messages, etc. Vous pouvez suivre ces ensembles de solutions pour résoudre ce problème. Correctif 1 – Activer le mode de mise au point Activez le mode de mise au point sur votre téléphone. Étape 1 – Faites glisser votre doigt depuis le haut pour accéder au Centre de contrôle. Étape 2 – Ensuite, activez le « Mode Focus » sur votre téléphone. Le mode Focus active le mode Ne pas déranger sur votre téléphone. Aucune alerte d’appel entrant n’apparaîtra sur votre téléphone. Correctif 2 – Modifier les paramètres du mode de mise au point S'il y a des problèmes dans les paramètres du mode de mise au point, vous devez les résoudre. Étape 1 – Ouvrez la fenêtre des paramètres de votre iPhone. Étape 2 – Ensuite, activez les paramètres du mode Focus

iPhone 15 Pro : Comment se débarrasser du symbole du mode silencieux dans la barre d'état iPhone 15 Pro : Comment se débarrasser du symbole du mode silencieux dans la barre d'état Sep 24, 2023 pm 10:01 PM

Sur les modèles iPhone 15 Pro et iPhone 15 Pro Max, Apple a introduit un bouton d'action physiquement programmable qui remplace le traditionnel interrupteur sonnerie/silencieux au-dessus des boutons de volume. Le bouton d'action peut être programmé pour exécuter plusieurs fonctions différentes, mais la possibilité de basculer entre les modes silencieux et sonnerie n'a pas disparu. Par défaut, un appui long sur le bouton d'action mettra l'appareil sous silence et le retour tactile du bouton clignotera trois fois. Les deux modèles d'iPhone 15 Pro afficheront un symbole de cloche barrée à côté de l'heure dans la barre d'état pour indiquer que le mode silencieux/silencieux est activé, et il le restera jusqu'à ce que vous appuyiez à nouveau longuement sur le bouton Action pour réactiver l'appareil. Si vous préférez mettre votre iPhone en mode silencieux

Guide d'utilisation du mode veille dans iOS 17 Guide d'utilisation du mode veille dans iOS 17 Aug 22, 2023 pm 04:01 PM

Le mode veille arrive sur iPhone avec iOS17, et ce guide vise à vous montrer comment utiliser cette fonctionnalité sur votre iPhone. Le mode veille est une fonctionnalité révolutionnaire qui transforme l’iPhone en un écran intelligent dynamique et toujours actif. Lorsque votre iPhone est posé horizontalement sur le côté pendant le chargement, il active le mode veille. Ce mode présente magnifiquement une multitude de widgets utiles, notamment l'heure actuelle, les mises à jour de la météo locale, un diaporama de vos photos préférées et même des commandes de lecture de musique. Un avantage significatif de ce mode est sa capacité à afficher des notifications, permettant aux utilisateurs de les visualiser et d'interagir avec elles sans avoir à réveiller complètement leur iPhone. Comment utiliser le mode veille Pour que le mode veille fonctionne correctement, votre iPhone doit être en cours d'exécution.

Comment activer le « Mode sombre Notepad++ » et le « Thème sombre Notepad++ » ? Comment activer le « Mode sombre Notepad++ » et le « Thème sombre Notepad++ » ? Oct 27, 2023 pm 11:17 PM

Le mode sombre de Notepad++ v8.0 n'a pas de paramètres, Notepad++ est l'éditeur de texte le plus utile. Chaque application exécutée sur Windows 10 prend en charge le mode sombre. Vous pouvez nommer des navigateurs Web tels que Chrome, Firefox et Microsoft Edge. Si vous travaillez sur Notepad++, le fond blanc par défaut peut vous faire mal aux yeux. Les développeurs ont ajouté le mode sombre à la version 8 de Notepad++, voici comment l'activer. Activer le Bloc-notes pour Windows 11/10 ++ Mode sombre Lancez le Bloc-notes ++ Cliquez sur "Paramètres" > "Préférences" > "Mode sombre" Sélectionnez "Activer le mode sombre" pour redémarrer le Bloc-notes

Utilisez la fonction __contains__() de Python pour définir l'opération de confinement d'un objet Utilisez la fonction __contains__() de Python pour définir l'opération de confinement d'un objet Aug 22, 2023 pm 04:23 PM

Utilisez la fonction __contains__() de Python pour définir l'opération de confinement d'un objet. Python est un langage de programmation concis et puissant qui fournit de nombreuses fonctionnalités puissantes pour gérer différents types de données. L'un d'eux consiste à implémenter l'opération de confinement des objets en définissant la fonction __contains__(). Cet article explique comment utiliser la fonction __contains__() pour définir l'opération de confinement d'un objet et donne un exemple de code. La fonction __contains__() est Python

See all articles