Bonjour,
il semble que j'ai un souci de "Singleton".
J'essaie d'avoir un système de Singleton sur ma class "App", en utilisant une fonction getInstance().
Et j'ai placé un "uniqid()" dans le constructeur pour vérifier que le système de Singleton fonctionne (mais ça ne fonctionne pas).
Pour voir j'ai mis un "var_dump()" dans mon header.php
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24 // App\App.php class App { private static $_instance; public function __construct() // REMOVE ME { $this->unique_id = uniqid(); } public static function getInstance() { if (self::$_instance == NULL) { self::$_instance = new App(); } return self::$_instance; } }
Je vais sur l'accueil pour voir, et le "uniqid()" change tout le temps... (à chaque fois que je clic sur "accueil").
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10 // App\Views\inc\header.php <?php $app = App::getInstance(); var_dump($app); ?>
J'ai fais une recherche de "new App" dans le contenu de tous les fichiers de mon dossier racine (de ce site),
et je n'ai qu'un seul résultat : celui de la fonction getInstance() de la class App que je vous ai montré.
PS : J'ai mis en pièces jointes les fichiers et la Base de données si ça peut aider.
(c'est juste un site de test pour moi pour mieux comprendre l'Objet, MVC, Singleton etc)
Merci pour votre aide je galère comme pas possible.
Partager