J'ai un arrière-plan Java. Restez avec moi.Initialisation unique pour l'application
Dans une application Java, une méthode d'initialisation unique consiste à utiliser une "servlet d'initialisation" dont la méthode init() peut avoir un code d'initialisation unique. Un autre mécanisme plus général est d'avoir un Singleton qui s'initialise lors de la première utilisation - et ce mécanisme fonctionnera dans plusieurs langages/plates-formes. Ce que je dois savoir, c'est comment le faire pour ma webapp PHP.
Devrais-je utiliser le motif Singleton? Y a-t-il une autre façon spécifique/meilleure/PHP? Essentiellement je veux avoir un "Registre" - une seule instance de celui-ci - que je peux ensuite utiliser pour créer des instances d'autres objets (eux-mêmes Singleton ou non dépend de la situation à portée de main). Le but ultime est - J'ai besoin de certaines choses initialisées AVANT qu'une requête web ne soit servie par mon application web PHP - quelque chose qu'un "Initializer Servlet" en Java me garantit. Peut-être qu'il existe une "page PHP Initializer" ou quelque chose comme ça?
Merci à l'avance
Euh, maintenant je suis un peu confus. Êtes-vous en train de dire que même le modèle Singleton ne fonctionnera pas pour mon registre? Êtes-vous en train de dire que la "portée" du singleton est restreinte au thread de contrôle traitant ma requête web. Si tel est le cas, je ne suis pas sûr de la manière dont les divers frameworks PHP réalisent l'injection de dépendances, à moins bien sûr que l'ensemble de la hiérarchie des objets soit construit sur chaque requête web. Je veux utiliser PHP mais ce serait un briseur d'affaire pour moi et j'espère que j'interprète mal vos commentaires. – Arby
Habituellement, l'ensemble de la hiérarchie d'objets est construit à chaque requête. La façon dont cela est fait dans le projet CakePHP est assez facile à suivre, peut-être que cela donnera un aperçu. – sleepynate
A moins que quelque chose n'ait changé au cours des dernières années (environ 3 ans sans travailler avec php), je peux vous dire ceci: la hiérarchie entière des objets sera utilisée pour chaque requête. – Fernando