Avec le développement continu de la technologie Internet, de plus en plus de sites Web et d'applications adoptent le modèle MVC comme cadre de conception. Parmi eux, le framework PHP représenté par ThinkPHP est l'un des modèles MVC les plus populaires. Dans le framework ThinkPHP, les modules constituent un concept très important. Les modules peuvent être utilisés pour diviser les applications en différents modules fonctionnels pour une gestion et une maintenance faciles. Mais les débutants peuvent rencontrer un problème, à savoir comment lier les modules. Ci-dessous, nous présenterons en détail comment ThinkPHP lie les modules.
1. Créer un module
Avant de commencer à lier des modules, créons d'abord un module. En prenant comme exemple la création d'un module nommé Blog, nous devons créer un répertoire nommé Blog dans le répertoire d'application du framework ThinkPHP, puis créer un contrôleur nommé Index et un contrôleur nommé index.html dans le répertoire Blog Template. Les opérations spécifiques sont les suivantes :
Exemple de code :
Fichier du contrôleur IndexController.class.php :
<?php namespace BlogController; use ThinkController; class IndexController extends Controller { public function index(){ $this->display(); } }
Fichier modèle index.html :
<!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title>Blog</title> </head> <body> <h1>Welcome to my blog!</h1> </body> </html>
2. Module de liaison
Après avoir créé le module Blog, nous devons le connecter à l'application Bind to faites savoir au système à quel module il faut accéder. Les opérations spécifiques sont les suivantes :
Exemple de code :
fichier config.php :
<?php return array( 'DEFAULT_MODULE' => 'Blog', // 默认模块名 ... );
Après avoir modifié le fichier de configuration, vous pouvez accéder au module Blog via l'URL suivante :
http://votredomaine/Blog
Liaison des sous-modules
. Certains Parfois, nous devons diviser un module en plusieurs sous-modules. Par exemple, dans le module Blog, nous pouvons créer la liste des articles et la page de détails de l'article en tant que sous-modules différents. Les opérations spécifiques sont les suivantes :
Fichier du contrôleur Article/IndexController.class.php :
<?php namespace BlogControllerArticle; use ThinkController; class IndexController extends Controller { public function index(){ $this->display(); } }
Fichier du contrôleur Article/DetailsController.class.php :
<?php namespace BlogControllerArticle; use ThinkController; class DetailsController extends Controller { public function index(){ $this->display(); } }
Fichier modèle Article/list.html :
<!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title>Article List</title> </head> <body> <h1>Article List</h1> </body> </html>
Fichier modèle Article/index.html :
<!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title>Article Details</title> </head> <body> <h1>Article Details</h1> </body> </html>
Exemple de code :
Fichier config.php :
<?php return array( 'DEFAULT_MODULE' => 'Blog', // 默认模块名 'URL_CASE_INSENSITIVE' => true, // URL不区分大小写 'MODULE_ALLOW_LIST' => array('Blog','Blog/Article'), // 允许访问的模块 ... );
Après avoir modifié le fichier de configuration, vous pouvez accéder au sous-module Article via l'URL suivante :
http://votredomaine/Blog/Article/index
http://votredomaine/Blog/Article/details
Ce à quoi vous devez faire attention lors de la liaison de sous-modules, c'est que les fichiers du contrôleur et du modèle doivent être stockés dans des groupes. Le préfixe de groupe doit être ajouté au nom de la classe du contrôleur, par exemple. comme espace de noms de la classe du contrôleur dans cet exemple pour BlogControllerArticle. Dans le même temps, le fichier de configuration doit limiter les modules autorisés à accéder aux modules parents et aux modules enfants.
4. Résumé
Le module de liaison est un lien très important dans le modèle ThinkPHP MVC. Le module de liaison peut diviser l'application en plusieurs modules fonctionnels et séparer la logique et la disposition du code pour une gestion et une maintenance faciles. Cet article fournit une introduction détaillée à la manière dont ThinkPHP lie les modules, de la création de modules à la liaison de modules en passant par la liaison de sous-modules. J'espère qu'il sera utile aux débutants.
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!