Maison >développement back-end >tutoriel php >À propos de l'utilisation de contrôleurs multicouches et de contrôleurs multiniveaux dans le framework thinkPHP

À propos de l'utilisation de contrôleurs multicouches et de contrôleurs multiniveaux dans le framework thinkPHP

不言
不言original
2018-06-14 15:29:572680parcourir

Cet article présente principalement l'utilisation des contrôleurs multicouches et des contrôleurs multiniveaux du framework TP (thinkPHP), et analyse la structure, les principes et l'utilisation des contrôleurs multicouches et des contrôleurs multiniveaux du framework thinkPHP sous forme d'exemples. . Les amis dans le besoin peuvent se référer à

Cet article décrit l'utilisation de contrôleurs multicouches et de contrôleurs multi-niveaux dans le framework TP (thinkPHP) à travers des exemples. Partagez-le avec tout le monde pour votre référence, les détails sont les suivants :

La structure des répertoires du contrôleur multicouche est la suivante :

├─ Contrôleur d'accès au contrôleur
│ ├─UserController.class.php
│ ├─BlogController.class.php
│ ...
├─Contrôleur d'événements d'événement
│ ├─UserEvent.class.php
│ ├─BlogEvent.class.php
│ ...

Ajoutez des contrôleurs multicouches à l'application App, sans ajouter de paramètres, simplement suivez ce qui précède Créez simplement le fichier directement.

Instanciation de contrôleur multi-niveaux :

/*
 * 多层控制器实例化 即和访问控制器Controller同级目录的Service时 可用D方法或A方法
 * 注:访问控制器的名称是通过DEFAULT_C_LAYER设置的,默认是Controller,访问控制器负责外部交互响应,
    其它的控制器层和外部隔离,只能内部调用。定义其他的控制器层,则不一定必须要继承系统的Controller类或其子类,通常需要输出模版的时候才需要继承Controller类。
 */
D('Admin', 'Service');
//或者
A('User','Event');
A('Admin/Blog','Event');  //假设当前模块是Home模块
// 实例化Home模块的User事件控制器
$User = new \Home\Event\UserEvent();
// 实例化Admin模块的Blog事件控制器
$Blog = new \Admin\Event\BlogEvent();

Et contrôle multi-niveaux La structure des répertoires du contrôleur est la suivante :

├─Controller Access Controller
│ ├─User User Level (Group)
│ │ ├─UserTypeController . class.php
│ │ ├─UserAuthController.class.php
│ ...
│ ├─Admin Note de l'administrateur (groupe)
│ │ ├─UserController.class.php
│ │ ├─ConfigController.class.php
│ ...

Le format d'accès :

http://serverName/Home/User/UserType
http://serverName/Home/Admin/User

La configuration d'un contrôleur multi-niveaux nécessite de définir des paramètres de configuration, c'est-à-dire de définir le niveau hiérarchique du contrôleur , comme le réglage La couche contrôleur du répertoire de niveau 2 est la suivante :

'CONTROLLER_LEVEL'   => 2,

L'espace de commande est le suivant ;

<?php
namespace Home\Controller\Admin;
use Think\Controller;
class IndexController extends Controller {
  public function hello(){
    echo &#39;hello&#39;;
  }
  public function test(){
    echo &#39;test&#39;;
  }
}

Instanciation des contrôleurs multi-niveaux :

peut être instancié directement

// 实例化Home模块的User控制器
$User = new \Home\Controller\User\UserTypeController();
// 实例化Admin模块的Blog控制器
$Blog = new \Admin\Controller\Admin\UserController();

Ce qui précède est l'intégralité du contenu de cet article. J'espère qu'il sera utile à l'étude de chacun. Pour plus de contenu connexe, veuillez faire attention au site Web PHP chinois !

Recommandations associées :

À propos de l'utilisation de la configuration personnalisée et du chargement du framework ThinkPHP3.2


Comment le framework thinkPHP est implémenté Requête de table multiple


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!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn