Précédent   Forum des professionnels en informatique > PHP > Outils > Zend > Zend Framework
Zend Framework Forum d'entraide sur la programmation PHP avec Zend Framework. Avant de poster -> FAQ ZF, Cours ZF
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 19/11/2011, 15h02   #1
Candidat au titre de Membre du Club
 
Inscription : juillet 2011
Messages : 21
Détails du profil
Informations forums :
Inscription : juillet 2011
Messages : 21
Points : 14
Points : 14
Par défaut Difference entre la fonction "init" et "preDispatche"

Bonjour

J'aimerai savoir la différence entre entre la fonction "init" et "preDispatche" dans un controleur.

Merci d'avance
touness est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 19/11/2011, 19h38   #2
Modérateur
 
Homme Loïc
Développeur Web
Inscription : février 2011
Messages : 680
Détails du profil
Informations personnelles :
Nom : Homme Loïc
Âge : 26
Localisation : France, Hérault (Languedoc Roussillon)

Informations professionnelles :
Activité : Développeur Web
Secteur : High Tech - Multimédia et Internet

Informations forums :
Inscription : février 2011
Messages : 680
Points : 1 044
Points : 1 044
Bonjour,
Le init peut etre comparer au constructeur du controller, du coup celui ci est appelé à l instanciation du controleur tandis que le predispatch est appelé avant l action, donc tout dépend de ce que tu veux faire.
5h4rk est déconnecté   Envoyer un message privé Réponse avec citation 10
Vieux 20/11/2011, 11h51   #3
Membre confirmé
 
Avatar de Nighty
 
Homme Lucas CORBEAUX
Chef de projet MOE
Inscription : février 2003
Messages : 159
Détails du profil
Informations personnelles :
Nom : Homme Lucas CORBEAUX
Âge : 28
Localisation : France, Maine et Loire (Pays de la Loire)

Informations professionnelles :
Activité : Chef de projet MOE

Informations forums :
Inscription : février 2003
Messages : 159
Points : 293
Points : 293
Outre le côté "séparation des rôles" (init() sert à l'initialisation du contrôleur, comme le souligne 5h4rk c'est une sorte de constructeur fournit aux développeurs, tandis que preDispatch() est un hook qui se déclenche avant une action), il y a une différence de fonctionnement notable entre init() et preDispatch(), elle concerne les "forwards" vers une autre action (ex : test des autorisations et redirection si l'action n'est pas autorisée).

init() ne gère pas bien l'appel à la méthode _forward(), tandis que preDispatch() est (en partis) conçu pour : si la méthode _forward() est appelée pendant le preDispatch(), alors l'action d'origine ne sera pas appelée.

Tu trouveras plus de détails ici : http://framework.zend.com/manual/en/...repostdispatch
Nighty est déconnecté   Envoyer un message privé Réponse avec citation 10
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 08h27.


 
 
 
 
Partenaires

Hébergement Web