Cet article présente principalement la méthode d'inclusion dynamique de fichiers dans ThinkPHP. C'est une compétence très pratique dans le développement de projets ThinkPHP. Les amis qui en ont besoin peuvent s'y référer
L'exemple de cet article décrit la mise en œuvre de. fichiers inclus dynamiquement dans la méthode ThinkPHP. Partagez-le avec tout le monde pour votre référence. L'analyse spécifique est la suivante :
Description du problème : Il est également très courant de rencontrer des problèmes lors de la réalisation de projets. Généralement, la page d'accueil contient des en-têtes et des étapes afin de faciliter la gestion, ceux-ci doivent être implémentés. en utilisant des fichiers d'inclusion. ThinkPHP Fournit une méthode pour inclure des fichiers. Ce qui précède est le moyen le plus simple d'inclure des opérations. Cependant, pendant le processus en cours, j'ai constaté que seul le fichier modèle est demandé lors de la demande, ce qu'on appelle l'inclusion statique. Mais si vous rencontrez un menu Il est difficile à gérer s'il est généré dynamiquement
J'ai trouvé une solution sur Internet : utiliser Widget
1 Nous implémentons un Widget pour l'affichage classifié sur le. Tout d'abord, nous devons implémenter notre première couche de contrôleur de widget CateWidget, comme suit :
class CateWidget extends Action { public function menu(){ return 'menuWidget'; } }
Notez qu'elle est définie dans le package Widget, ce qui est différent de l'action générale<🎜. >
2. Ensuite, on le passe dans le template. La méthode R appelle ce Widget (la méthode Widget étendue utilise la méthode W dans le template).{:R('Cate/Menu','','Widget')}
class CateWidget extends Action { public function menu(){ echo 'menuWidget'; } }
4. L'utilisation dans le modèle doit être modifiée en :
{~R('Cate/Menu','','Widget')}
class CateWidget extends Action { public function menu($id,$name){ echo $id.':'.$name; } }
{:R('Cate/Menu',array(5,'thinkphp'),'Widget')}
class CateWidget extends Action { public function menu(){ $menu = M('Cate')->getField('id,title'); $this->assign('menu',$menu); $this->display('Cate:menu'); } }
À propos du code de la classe de cache de fichiers ThinkPHP
Analyse des fonctions et de l'utilisation des widgets dans Framework thinkPHP5
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!