ThinkPHP3.2.3框架實(shí)現(xiàn)的空模塊、空控制器、空操作,跳轉(zhuǎn)到錯(cuò)誤404頁面圖文詳解
本文實(shí)例講述了ThinkPHP3.2.3框架實(shí)現(xiàn)的空模塊、空控制器、空操作,跳轉(zhuǎn)到錯(cuò)誤404頁面。分享給大家供大家參考,具體如下:
【演示準(zhǔn)備】
首先下載了一個(gè)ThinkPHP3.2.3,目錄結(jié)構(gòu)如下:(只有Home模塊、Index控制器、index操作方法)

然后找了一個(gè)簡易的錯(cuò)誤404頁面404.html放到了根目錄:

【空模塊】
訪問一個(gè)不存在的模塊Admin,錯(cuò)誤提示:

修改根目錄下 ThinkPHP/Library/Think/Dispatcher.class.php 178行代碼:
// E(L('_MODULE_NOT_EXIST_').':'.MODULE_NAME);
header("Location: /404.html");
exit();

【空控制器】
訪問Home模塊不存在的控制器User,錯(cuò)誤提示:

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

通常的處理方法是:在當(dāng)前模塊下新建一個(gè)Empty控制器,在里面做404跳轉(zhuǎn)(A方法實(shí)例化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操作方法,錯(cuò)誤提示:

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

通常的處理方法是:在當(dāng)前模塊下新建一個(gè)Public控制器(繼承Controller),在里面定義_empty方法跳轉(zhuǎn)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:

再次訪問空操作方法:

更多關(guān)于thinkPHP相關(guān)內(nèi)容感興趣的讀者可查看本站專題:《ThinkPHP入門教程》、《thinkPHP模板操作技巧總結(jié)》、《ThinkPHP常用方法總結(jié)》、《codeigniter入門教程》、《CI(CodeIgniter)框架進(jìn)階教程》、《Zend FrameWork框架入門教程》及《PHP模板技術(shù)總結(jié)》。
希望本文所述對大家基于ThinkPHP框架的PHP程序設(shè)計(jì)有所幫助。
- 讓whoops幫我們告別ThinkPHP6的異常頁面
- Thinkphp 在api開發(fā)中異常返回依然是html的解決方式
- 解決thinkphp5未定義變量會拋出異常,頁面錯(cuò)誤,請稍后再試的問題
- 關(guān)于ThinkPHP中的異常處理詳解
- thinkPHP線上自動加載異常與修復(fù)方法實(shí)例分析
- ThinkPHP中自定義錯(cuò)誤頁面和提示頁面實(shí)例
- TP5(thinkPHP5框架)實(shí)現(xiàn)顯示錯(cuò)誤信息及行號功能的方法
- ThinkPHP下表單令牌錯(cuò)誤與解決方法分析
- ThinkPHP表單令牌錯(cuò)誤的相關(guān)解決方法分析
- thinkPHP自動驗(yàn)證、自動添加及表單錯(cuò)誤問題分析
- Thinkphp5框架異常處理操作實(shí)例分析
相關(guān)文章
淺談laravel 5.6 安裝 windows上使用composer的安裝過程
今天小編就為大家分享一篇淺談laravel 5.6 安裝 windows上使用composer的安裝過程,具有很好的參考價(jià)值,希望對大家有所幫助。一起跟隨小編過來看看吧2019-10-10
php導(dǎo)出csv文件,可導(dǎo)出前導(dǎo)0實(shí)例代碼
下面小編就為大家?guī)硪黄猵hp導(dǎo)出csv文件,可導(dǎo)出前導(dǎo)0實(shí)例代碼。小編覺得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧2016-11-11
Zend?Framework基于Command命令行建立Zend?Framework項(xiàng)目的方法
這篇文章主要介紹了Zend?Framework基于Command命令行建立Zend?Framework項(xiàng)目的方法,較為詳細(xì)的分析了使用Command命令行建立Zend?Framework框架的具體操作步驟與相關(guān)注意事項(xiàng),需要的朋友可以參考下2017-02-02

