ThinkPHP3.2.3框架實現(xiàn)的空模塊、空控制器、空操作,跳轉到錯誤404頁面圖文詳解
本文實例講述了ThinkPHP3.2.3框架實現(xiàn)的空模塊、空控制器、空操作,跳轉到錯誤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程序設計有所幫助。
相關文章
php執(zhí)行多個存儲過程的方法【基于thinkPHP】
這篇文章主要介紹了php執(zhí)行多個存儲過程的方法,結合實例形式分析了基于thinkPHP框架調用多個存儲過程的相關操作技巧,需要的朋友可以參考下2016-11-11
PHP中可以自動分割查詢字符的Parse_str函數(shù)使用示例
這篇文章主要介紹了PHP中可以自動分割查詢字符的Parse_str函數(shù)使用示例,小編也沒見過的一個函數(shù),這下分割URL中的查詢字符串就方便了,需要的朋友可以參考下2014-07-07
ioncube_loader_win_5.2.dll的錯誤解決方法
這篇文章主要介紹了ioncube_loader_win_5.2.dll的錯誤解決方法的相關資料,需要的朋友可以參考下2015-01-01

