Est-ce correct d'utiliser une méthode singleton à l'intérieur d'un __constructeur pour lancer la classe si ce n'est déjà fait?singleton à l'intérieur d'une méthode de construction en PHP?
Répondre
Non - Une méthode singleton est une alternative à l'utilisation d'un constructeur.
Au lieu de dire $session = new Session();
vous devriez dire
$session = Session::getStaticSession();
ensuite définir Session::getStaticSession()
en fonction tht retourne un var statique interne et appelle "nouvelle session()" si le var statique interne est nul.
Si vous le créez dans chaque constructeur qui l'utilise, ce n'est pas un singleton. Si vous suivez ce tutoriel, il devrait vous aider à comprendre comment utiliser le modèle de conception singleton en PHP.
http://www.developertutorials.com/tutorials/php/php-singleton-design-pattern-050729/page1.html
Vous ne pouvez pas utiliser une méthode singleton dans un constructeur, comme l'objet a déjà été créé, et vous ne pouvez pas retourner quoi que ce soit. D'un autre côté, votre méthode singleton doit renvoyer l'objet actuel ou en créer un nouveau.
Vous pouvez utiliser une seule méthode pour le faire, cependant, comme les suivantes:
<?php
class X {
// ...
function instance() {
static $instance;
if(!is_a($instance, 'X')) {
$instance = new X();
}
}
?>
- 1. Accéder aux méthodes singleton en PHP
- 2. Accès à la méthode statique personnalisée PHP
- 3. Alternative à Singleton
- 4. PHP singleton pattern - question à propos de extends
- 5. Singleton jetable en C#
- 6. Quelle méthode de compression utiliser en PHP?
- 7. NUnit Mocking ne fonctionne pas pour la méthode Singleton
- 8. Invoquer une méthode utilisant la réflexion sur un objet singleton
- 9. Méthode de construction d'éditeur de texte léger et multiplateforme
- 10. Découvrez la méthode HTTP en PHP
- 11. Instances Singleton multiples
- 12. Je souhaite ajouter une méthode singleton avec une fermeture à un objet Ruby
- 13. aide PHP avec la construction requête
- 14. C# appelle une méthode statique à l'exécution sans une référence de temps de construction?
- 15. Comment implémenter un singleton en C#?
- 16. PHP méthode d'encodage URL
- 17. Problème de création Singleton C++
- 18. Comment appeler dynamiquement une méthode de classe en PHP?
- 19. PHP ignorant la méthode __set à l'intérieur de la classe
- 20. Comment puis-je passer un objet PHP à une fonction statique pendant la construction de l'objet?
- 21. MSTest échouer en 2008 à partir du script de construction
- 22. quand utiliser un singleton?
- 23. Client de service Web en tant que singleton?
- 24. Instancier un objet singleton à l'aide de Class.forName()?
- 25. Création d'un singleton de toute classe donnée en javascript
- 26. Singleton dans une DLL?
- 27. C# travailler avec singleton à partir de deux threads différents
- 28. Ninject et Singleton
- 29. Construction d'un expéditeur de courrier en bloc
- 30. Flex: DisplayObject Singleton
ok merci je l'ai un peu mal compris, j'ai eu l'idée de base mais maintenant je l'ai pleinement je pense – JasonDavis