ThinkPHP3.2.3框架实现的空模块、空控制器、空操作,跳转到错误404页面图文详解

 更新时间:2019年04月03日 11:17:34   作者:李维山  
这篇文章主要介绍了ThinkPHP3.2.3框架实现的空模块、空控制器、空操作,跳转到错误404页面,结合图文形式详细分析了thinkPHP3.2.3框架空模块、空控制器、空操作,跳转到错误404页面具体操作步骤与相关实现技巧,需要的朋友可以参考下

本文实例讲述了ThinkPHP3.2.3框架实现的空模块、空控制器、空操作,跳转到错误404页面。分享给大家供大家参考,具体如下:

【演示准备】

    首先下载了一个ThinkPHP3.2.3,目录结构如下:(只有Home模块、Index控制器、index操作方法)

    然后找了一个简易的错误404页面404.html放到了根目录:

【空模块】

访问一个不存在的模块Admin,错误提示:

 修改根目录下 ThinkPHP/Library/Think/Dispatcher.class.php 178行代码:

// E(L('_MODULE_NOT_EXIST_').':'.MODULE_NAME);
header("Location: /404.html");
exit();
再次访问空模块:

【空控制器】

访问Home模块不存在的控制器User,错误提示:

查看根目录下 ThinkPHP/Library/Think/App.class.php 101行前后代码:

通常的处理方法是:在当前模块下新建一个Empty控制器,在里面做404跳转(A方法实例化Empty控制器)。

EmptyController.class.php:

<?php
namespace Home\Controller;
use Think\Controller;
class EmptyController extends Controller {
  public function index() {
    header("Location:/404.html");
    exit();
  }
}

再次访问空控制器:

 【空操作】

访问Home模块下Index控制器不存在的test操作方法,错误提示:

 

查看根目录下 ThinkPHP/Library/Think/Controller.class.php 170行前后代码: 

通常的处理方法是:在当前模块下新建一个Public控制器(继承Controller),在里面定义_empty方法跳转404页面, 然后其他控制器再继承Public。

PublicController.class.php:

<?php
namespace Home\Controller;
use Think\Controller;
class PublicController extends Controller {
  public function _empty() {
    header("Location:/404.html");
    exit();
  }
}

Index控制器继承Puclic:

再次访问空操作方法: 

更多关于thinkPHP相关内容感兴趣的读者可查看本站专题:《ThinkPHP入门教程》、《thinkPHP模板操作技巧总结》、《ThinkPHP常用方法总结》、《codeigniter入门教程》、《CI(CodeIgniter)框架进阶教程》、《Zend FrameWork框架入门教程》及《PHP模板技术总结》。

希望本文所述对大家基于ThinkPHP框架的PHP程序设计有所帮助。

相关文章

  • 浅谈laravel 5.6 安装 windows上使用composer的安装过程

    浅谈laravel 5.6 安装 windows上使用composer的安装过程

    今天小编就为大家分享一篇浅谈laravel 5.6 安装 windows上使用composer的安装过程,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2019-10-10
  • php导出csv文件,可导出前导0实例代码

    php导出csv文件,可导出前导0实例代码

    下面小编就为大家带来一篇php导出csv文件,可导出前导0实例代码。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2016-11-11
  • PHP 实现浏览记录并按日期分组

    PHP 实现浏览记录并按日期分组

    这篇文章主要介绍了PHP 实现浏览记录并按日期分组的实例代码,非常不错,具有参考借鉴价值,需要的朋友可以参考下
    2017-05-05
  • Zend Framework基于Command命令行建立Zend Framework项目的方法

    Zend Framework基于Command命令行建立Zend Framework项目的方法

    这篇文章主要介绍了Zend Framework基于Command命令行建立Zend Framework项目的方法,较为详细的分析了使用Command命令行建立Zend Framework框架的具体操作步骤与相关注意事项,需要的朋友可以参考下
    2017-02-02
  • Laravel相关的一些故障解决

    Laravel相关的一些故障解决

    这篇文章主要给大家介绍了关于Laravel相关的一些故障的解决方法,文中通过示例代码介绍的非常详细,对大家的学习或者使用Laravel具有一定的参考学习价值,需要的朋友们下面来一起学习学习吧
    2020-08-08
  • 对于Laravel 5.5核心架构的深入理解

    对于Laravel 5.5核心架构的深入理解

    安装完laravel框架后,我们就需要了解一下整个框架的核心架构,下面这篇文章主要给大家介绍了关于Laravel 5.5核心架构的一些深入理解,文中通过图文及示例代码介绍的非常详细,需要的朋友可以参考借鉴,下面随着小编来一起学习学习吧。
    2018-02-02
  • Yaf框架封装的MySQL数据库操作示例

    Yaf框架封装的MySQL数据库操作示例

    这篇文章主要介绍了Yaf框架封装的MySQL数据库操作,结合实例形式分析了Yaf框架基于PDO操作MySQL数据库的相关配置、连接、增删改查、统计等相关操作技巧,需要的朋友可以参考下
    2019-03-03
  • 详解php与ethereum客户端交互

    详解php与ethereum客户端交互

    本篇文章给大家讲述了php与ethereum客户端交互的相关知识点,对此有需要的朋友可以跟着学习下。
    2018-04-04
  • 深入浅析用PHP实现MVC

    深入浅析用PHP实现MVC

    在PHP中使用MVC越来越流行了,特别是在一些开源的框架当中。接下来通过本文给大家介绍PHP实现MVC的相关知识,感兴趣的朋友一起学习吧
    2016-03-03
  • php多维数组去掉重复值示例分享

    php多维数组去掉重复值示例分享

    这篇文章主要介绍了php多维数组去掉重复值示例,需要的朋友可以参考下
    2014-03-03

最新评论