Le contrôleur de ThinkPHP est une classe qui accepte les entrées de l'utilisateur et appelle des modèles et des vues pour répondre aux besoins de l'utilisateur ; la couche de contrôleur se compose de contrôleurs principaux et de contrôleurs métier, responsables du contrôle de la planification des applications, tandis que le contrôleur métier se compose d'une classe de contrôleur définie par l'utilisateur terminée. .
L'environnement d'exploitation de ce tutoriel : système Windows 7, version thinkphp v5.1, ordinateur Dell G3.
ThinkPHP est basé sur le modèle MVC (Model-View-Controller, Model-View-Controller) et prend en charge la conception multicouche (multi-couche).
MVC est un modèle de conception qui impose la séparation de l'entrée, du traitement et de la sortie d'une application. À l'aide de MVC, une application est divisée en trois composants principaux : le modèle (M), la vue (V) et le contrôleur (C), chacun gérant ses propres tâches.
Couche contrôleur
Le contrôleur de ThinkPHP est une classe.
La couche contrôleur de ThinkPHP se compose d'un contrôleur principal et d'un contrôleur métier. Le contrôleur principal est complété par la classe App à l'intérieur du système et est responsable du contrôle de planification des applications (y compris les modules, les contrôleurs et les opérations), y compris l'interception des requêtes HTTP et transfert, configuration de charge, etc. Le contrôleur métier est complété par une classe de contrôleur définie par l'utilisateur. Le principe de mise en œuvre du contrôleur métier multicouche est similaire à la superposition de modèles, tels que le contrôleur métier et le contrôleur d'événements :
Controller/UserController //Utilisé pour le contrôle et la planification de la logique métier des utilisateurs
Event/UserEvent //Utilisé Le opération de réponse à l'événement de l'utilisateur
Le contrôleur d'accès Home/Controller/UserController.class.php est défini comme suit :
namespace Home\Controller; use Think\Controller; class UserController extends Controller{ }
Le contrôleur d'événement Home/Event/UserEvent.class.php est défini comme suit :
namespace Home\Event; use Think\Controller; class UserEvent extends Controller{ }
UserController est responsable des réponse d'interaction, réponse à la demande via une URL, telle que http://serverName/User/index, et UserEvent est responsable de la réponse aux événements internes et ne peut être appelé qu'en interne :
A('User','Event');
La couche de contrôleur d'accès par défaut est Controller, nous pouvons ajuster la paramètres comme suit :
'DEFAULT_C_LAYER' => 'Event', // 默认的控制器层名称改为Event
Il est donc isolé du monde extérieur.
La division des contrôleurs multicouches n'est pas obligatoire et peut être superposée librement en fonction des besoins de l'application. Dans la couche contrôleur, vous pouvez appeler le modèle en couches selon vos besoins, ou vous pouvez appeler différentes vues en couches (thèmes).
Dans les trois couches de MVC, ThinkPHP ne s'appuie pas sur M ou V. Il peut même n'avoir que C ou uniquement V. Il s'agit d'une conception d'expérience utilisateur très importante dans la conception ThinkPHP. l'absence de C Il peut également être reconnu automatiquement.
【Recommandation de tutoriel connexe : thinkphp framework】
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!