溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點(diǎn)擊 登錄注冊 即表示同意《億速云用戶服務(wù)條款》
  • 首頁 > 
  • 教程 > 
  • 開發(fā)技術(shù) > 
  • ThinkPHP3.2.3框架如何實(shí)現(xiàn)空模塊、空控制器、空操作,跳轉(zhuǎn)到錯(cuò)誤404頁面

ThinkPHP3.2.3框架如何實(shí)現(xiàn)空模塊、空控制器、空操作,跳轉(zhuǎn)到錯(cuò)誤404頁面

發(fā)布時(shí)間:2021-07-08 09:50:54 來源:億速云 閱讀:103 作者:小新 欄目:開發(fā)技術(shù)

小編給大家分享一下ThinkPHP3.2.3框架如何實(shí)現(xiàn)空模塊、空控制器、空操作,跳轉(zhuǎn)到錯(cuò)誤404頁面,希望大家閱讀完這篇文章之后都有所收獲,下面讓我們一起去探討吧!

具體如下:

【演示準(zhǔn)備】

    首先下載了一個(gè)ThinkPHP3.2.3,目錄結(jié)構(gòu)如下:(只有Home模塊、Index控制器、index操作方法)

ThinkPHP3.2.3框架如何實(shí)現(xiàn)空模塊、空控制器、空操作,跳轉(zhuǎn)到錯(cuò)誤404頁面

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

ThinkPHP3.2.3框架如何實(shí)現(xiàn)空模塊、空控制器、空操作,跳轉(zhuǎn)到錯(cuò)誤404頁面

【空模塊】

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

ThinkPHP3.2.3框架如何實(shí)現(xiàn)空模塊、空控制器、空操作,跳轉(zhuǎn)到錯(cuò)誤404頁面

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

// E(L('_MODULE_NOT_EXIST_').':'.MODULE_NAME);
header("Location: /404.html");
exit();

再次訪問空模塊:

ThinkPHP3.2.3框架如何實(shí)現(xiàn)空模塊、空控制器、空操作,跳轉(zhuǎn)到錯(cuò)誤404頁面

【空控制器】

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

ThinkPHP3.2.3框架如何實(shí)現(xiàn)空模塊、空控制器、空操作,跳轉(zhuǎn)到錯(cuò)誤404頁面

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

ThinkPHP3.2.3框架如何實(shí)現(xiàn)空模塊、空控制器、空操作,跳轉(zhuǎn)到錯(cuò)誤404頁面

通常的處理方法是:在當(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();
  }
}

再次訪問空控制器:

ThinkPHP3.2.3框架如何實(shí)現(xiàn)空模塊、空控制器、空操作,跳轉(zhuǎn)到錯(cuò)誤404頁面

 【空操作】

訪問Home模塊下Index控制器不存在的test操作方法,錯(cuò)誤提示:

 ThinkPHP3.2.3框架如何實(shí)現(xiàn)空模塊、空控制器、空操作,跳轉(zhuǎn)到錯(cuò)誤404頁面

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

ThinkPHP3.2.3框架如何實(shí)現(xiàn)空模塊、空控制器、空操作,跳轉(zhuǎn)到錯(cuò)誤404頁面

通常的處理方法是:在當(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:

ThinkPHP3.2.3框架如何實(shí)現(xiàn)空模塊、空控制器、空操作,跳轉(zhuǎn)到錯(cuò)誤404頁面

再次訪問空操作方法: 

ThinkPHP3.2.3框架如何實(shí)現(xiàn)空模塊、空控制器、空操作,跳轉(zhuǎn)到錯(cuò)誤404頁面

看完了這篇文章,相信你對“ThinkPHP3.2.3框架如何實(shí)現(xiàn)空模塊、空控制器、空操作,跳轉(zhuǎn)到錯(cuò)誤404頁面”有了一定的了解,如果想了解更多相關(guān)知識,歡迎關(guān)注億速云行業(yè)資訊頻道,感謝各位的閱讀!

向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI