IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Zend Framework PHP Discussion :

Difference entre la fonction "init" et "preDispatche" [ZF 1.11]


Sujet :

Zend Framework PHP

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Inscrit en
    Juillet 2011
    Messages
    21
    Détails du profil
    Informations forums :
    Inscription : Juillet 2011
    Messages : 21
    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

  2. #2
    Membre Expert
    Avatar de 5h4rk
    Homme Profil pro
    CTO at TabMo
    Inscrit en
    Février 2011
    Messages
    813
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations professionnelles :
    Activité : CTO at TabMo
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Février 2011
    Messages : 813
    Par défaut
    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.

  3. #3
    Membre chevronné

    Homme Profil pro
    Développeur Web
    Inscrit en
    Février 2003
    Messages
    253
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Février 2003
    Messages : 253
    Par défaut
    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

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Difference entre [Simple quote] & [Double quote]
    Par Invité dans le forum SQL
    Réponses: 3
    Dernier message: 24/07/2013, 12h24
  2. [XL-2003] difference entre deux nombres en fonction d'une date
    Par revemane dans le forum Macros et VBA Excel
    Réponses: 15
    Dernier message: 11/06/2009, 10h26
  3. Différences entre Delphi et Visual Basic ?
    Par Anonymous dans le forum Débats sur le développement - Le Best Of
    Réponses: 75
    Dernier message: 30/03/2009, 20h09
  4. Réponses: 4
    Dernier message: 27/07/2007, 16h39

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo