1.空操作和空控制器使用
空操作:就沒有指定的操作方法
空控制器:沒有指定控制器
/index.php/home/user/hello 空操作
/index.php/home/beijing/login 空控制器
一般**處於安全考慮不給使用者提示任何錯誤資訊
「空操作」本質意思:乙個物件(
控制器)
呼叫本身不存在的方法
在oop
裡邊,物件呼叫本身不存在方法,處於使用者體驗比較好的角度考慮,我們可以在類裡邊製作乙個魔術方法:
function __call();
為了避免每個控制器裡都弄這個魔術方法,所以在父類裡面製作 ——//controller父類:thinkphp/librray/think/controller.class.php
2. 空操作有兩種解決方案:
① 在對應的控制器裡邊製作乙個方法,名稱為」_empty」,這個控制器的空操作都會自動執行該方法。(推薦使用)
例如:
3.空控制器
空控制器:在例項化控制器物件的時候,沒有找到指定的類
熟記檔案:
index.php 入口檔案
thinkphp/thinkphp.php 框架核心檔案
thinkphp/library/think/think.class.php 框架核心檔案
空控制器處理方案:可以再製作乙個控制器,名稱emptycontroller.class.php
在該控制器內部其實只需要製作乙個_empty()
方法即可。
到此空操作處理和空控制器處理完成!
進行更多交流
ThinkPHP之空模組和空操作
遇到這樣的情況,作為程式設計師的我們當然知道是怎麼回事了,但是使用者不知道啊,所以我們可以使用thinkphp的空操作來規避這樣的情況發生,如下圖 定義乙個 empty 方法,當使用者輸入不存在的方法時,程式自動來呼叫此方法,我寫的比較簡單,直接重定向到首頁。重定向是可以了,但是後面跳轉的路徑多了乙...
Thinkphp教程 空操作
空操作是指系統在找不到指定的操作方法的時候,會定位到空操作 empty 方法來執行,利用這個機制,我們可以實現錯誤頁面和一些url的優化。例如,下面我們用空操作功能來實現乙個城市切換的功能。我們只需要給cityaction類定義乙個 empty 空操作 方法 123 4567 891011 1213...
thinkPHP的空操作和空控制器
1 空操作 當使用者訪問某控制器下不存在的方法時,tp會自動的執行當前控制器下的 empty方法。對於此機制就是空操作。2 當訪問的控制器下沒有 empty方法時,使用者訪問了不存在的方法 下面以test3為例 時,會報如下的錯誤 3 在控制器中新增 empty方法 namespance 模組名 c...