thinkphp学习05-基础、空、多级控制器

基础控制器

一般来说,创建控制器后,推荐继承基础控制器来获得更多的方法;
基础控制器仅仅提供了控制器验证功能,并注入了think\App和think\Request;

namespace app\controller;

use app\BaseController;
class Test extends BaseController
{
   
	public function index()
	{
   
		//返回实际路径
		echo $this->app->getBasePath();
		echo "<br>";
		//返回当前方法名
		echo $this->request->action();
	}
}

在这里插入图片描述

空控制器

空控制器的概念是指当系统找不到指定的控制器名称的时候,系统会尝试定位当前应用下的空控制器(Error)类,利用这个机制我们可以用来定制错误页面和进行URL的优化。
在单应用模式下,我们可以给项目定义一个 Error 控制器类,来提醒错误;
Error.php

<?php

namespace app\controller;

class Error
{
   
    public function index()
    {
   
        return '当前控制器不存在!';
    }
}

控制器不存在即可触发
在这里插入图片描述
将index替换为下面的方法

public function __call($method, $args)
{
   
    echo print_r($method);
    echo "<br>";
    echo print_r($args);
}

在这里插入图片描述

多级控制器

所谓多级控制器,就是在控制器 controller 目录下再建立目录并创建控制器,我们在 controller 目录下建立 group 目录,并创建 Blog.php 控制器,而此时,我们需要访问的地址为:http://localhost:8506/group.blog以及http://localhost:8506/group.blog/read
在这里插入图片描述

在这里插入图片描述

相关推荐

  1. thinkphp控制器调用脚本

    2024-01-08 08:56:04       52 阅读
  2. React基础学习-Day05

    2024-01-08 08:56:04       20 阅读

最近更新

  1. docker php8.1+nginx base 镜像 dockerfile 配置

    2024-01-08 08:56:04       94 阅读
  2. Could not load dynamic library ‘cudart64_100.dll‘

    2024-01-08 08:56:04       101 阅读
  3. 在Django里面运行非项目文件

    2024-01-08 08:56:04       82 阅读
  4. Python语言-面向对象

    2024-01-08 08:56:04       91 阅读

热门阅读

  1. React07-路由管理器react-router

    2024-01-08 08:56:04       49 阅读
  2. MySQL第一讲:MySQL知识体系详解(P6精通)

    2024-01-08 08:56:04       53 阅读
  3. 企业云安全能力建设的要点

    2024-01-08 08:56:04       54 阅读
  4. es6中箭头函数 原型

    2024-01-08 08:56:04       56 阅读
  5. shtml与html的区别

    2024-01-08 08:56:04       53 阅读
  6. oracle xml_data 包的使用

    2024-01-08 08:56:04       60 阅读
  7. 【面试】Redis基础知识

    2024-01-08 08:56:04       57 阅读