2010-07-16 5 views
2

Je dois utiliser des fonctions/objets personnalisés dans mon application web basée sur Zend Framework 1.10. Où est le meilleur endroit pour les mettre?Où mettre des fonctions personnalisées dans Zend Framework 1.10

Merci à l'avance

+0

Cela dépend de ce qu'ils font. Pouvez vous nous dire? – Gordon

+0

* (apparenté) * [Zend framework a-t-il une version corrigée de la structure de fichier?] (Http://stackoverflow.com/questions/2536332/does-zend-framework-has-a-fix-version-of-file- structure/2536394) et [Où placer les plugins dans un site Web Zend Framework] (http://stackoverflow.com/questions/2400772/where-to-put-plugins-in-a-zend-framework-website/2400796) – Gordon

+1

Un exemple pour les objets que j'utilise: Dans une maison, il y a beaucoup d'armoires: la maison contient des pièces. Chaque chambre contient des armoires. Pour les fonctions: getMeanValueFromArray, getStdDevFromArray ... J'espère que cela clarifiera la question – hotips

Répondre

4

Les objets que vous décrivez appartiennent au modèle, ils vont dans application/models. Souvenez-vous que le Modèle est tout ce qui ne se rapporte pas à la couche de présentation (par exemple les V et C dans MVC). Ma suggestion serait d'avoir cette structure alors:

application 
- models 
-- my   -> to indicate this is yours 
--- persistence -> contains all classes that capsulte Data access logic 
--- domain  -> business objects in your domain of application 
--- service  -> services that use the domain objects or the persistence layer 
--- mappers  -> your ORM layer (unless you are not using Doctrine anyway) 

Si vous avez des classes qui sont suffisamment génériques pour être réutilisés dans d'autres applications, vous pouvez les placer dans le dossier/lib. Mais tout spécialement conçu pour votre application devrait aller dans les modèles.

En outre, un coup d'oeil à la ZFPlanet Sample Project by Padraic Brady

+0

Comment puis-je accéder à ces objets/fonctions dans un contrôleur? Merci? – hotips

+0

@user comme si vous accédiez à vos autres classes de modèles. Suivez la convention de dénomination Zend et l'autochargeur doit s'occuper du reste. – Gordon

+0

En fait, l'autochargeur de ressources par défaut spécifie un certain nombre de répertoires différents sous '/ application' pour stocker différentes classes, par ex. '/ application/services','/application/plugins', '/application/forms', etc. ZF semble considérer le répertoire'/application/models' comme l'endroit où stocker les classes d'objets de domaine métier et les classes DAL. C'est une interprétation légèrement différente de ce qu'est le «modèle», mais nous nous perdons quand nous essayons de décider où, par exemple, mettre un adaptateur auth personnalisé. –

Questions connexes