Structure de répertoire pour MVC
Je suis en train de nettoyer le cadre que j'ai travaillé. Dès maintenant, le site se compose de l'un des répertoires suivants:
Models
Views
Controllers
Helpers (Miscellaneous functions)
Libraries (Universal classes, like library and session management)
Images
Style
Toutes les fois qu'une page est appelée, le routeur script recherche le contrôleur associé, de sorte thesite.com/login serait instancier Login_Controller à '/controllers/login.php " Le problème que je me pose est, le routeur script lui-même se sent comme un type de contrôleur, comme le fait view.php qui gère les données de mise en forme pour être manipulé par la vue appropriée. Mais ce ne sont pas tout à fait comme la page des contrôleurs, car ils contrôlent le MVC lui-même. Je suis encore un peu nouveau pour cette architecture, et je suis curieux de voir comment quelqu'un avec plus d'expérience, d'organiser cela.
Je pourrais classer le routeur et de la vue des contrôleurs de bibliothèques, ou serait-il mieux de créer un sous-répertoire dans /contrôleurs appelés "pages", ou d'autres idées? Merci beaucoup.
source d'informationauteur dlwiest | 2011-10-31
Vous devez vous connecter pour publier un commentaire.
Je vous propose de suivre le Symfony 1.x structure de répertoire. Clair, logique, sécurisé.
Extrait du livre "The definitive guide to Symfony" par Fabien Potencier & François Zaninotto :
et backend pour le front et back office).
cache version des actions et des modèles du projet. Le mécanisme de cache
(détaillée dans le Chapitre 12) utilise ces fichiers pour accélérer la réponse aux requêtes web.
Chaque application aura un sous-répertoire, contenant prétraitées PHP
et les fichiers HTML.
fichier qui crée des tables, ou même une base de données SQLite fichier.
la documentation générée par PHPdoc.
pour être partagé entre vos applications. Le modèle/ sous-répertoire stocke les
modèle d'objet du projet (décrit dans le Chapitre 8).
fichiers journaux de serveur web, base de données des fichiers journaux ou les fichiers journaux à partir de toute partie du projet.
Symfony crée un fichier journal par application et par l'environnement (les fichiers journaux sont
discuté dans le Chapitre 16).
17).
symfony framework de test (voir le Chapitre 15). Lors de la configuration du projet,
symfony ajoute automatiquement certaines talons avec quelques tests de base.
ceux situés dans ce répertoire.
Je vous suggère d'étudier un cadre de la structure de répertoire, comme symfony2 ou yii
voici ce que j'ai choisi pour le mien:
Vous pouvez également utiliser les conventions de nommage de fichiers, tels que: YourClassName.class.php pour les clases, YourView.phtml vos points de vue, etc. Vérifier un cadre et vous apprendrez comment structurer joliment et app.
Je ne voudrais pas me considérer comme un expert, mais une solution serait de déplacer votre "cadre" de la mise en œuvre. Ce que je veux dire, c'est de déplacer votre 'routeur', 'view.php" et les autres classes du framework pour certains emplacement externe qui permet ensuite de les inclure dans votre index.php ou quel que soit le fichier de votre point d'accès.
Alors seulement le contenu serait dans votre répertoire de l'application, tandis que tous les fichiers du framework serait dans un endroit qui n'est pas accessible via le serveur web.
Juste une idée 🙂
J'aime vraiment Zend est Recommandé Structure de Répertoire du Projet.