aa电影在线观看,色就是se94se人妻无码,忘忧草影视www韩国,在线免费看a网站,五月免费视频,欧美性爱AⅤ,欧美a片亚洲a片 欧美亚洲aa片,上门服务给人妻精油按摩,国产原创同事在线视频,韩国三级李恩美电影

空控制器

空控制器的概念是指當系統找不到指定的控制器名稱的時候,系統會嘗試定位空控制器(Error),利用這個機制我們可以用來定制錯誤頁面和進行URL的優化。
現(xian)在(zai)我們把(ba)(ba)前面的需求進一步,把(ba)(ba)URL由原來的

http://serverName/index/city/shanghai/

變成

http://serverName/index/shanghai/

這樣(yang)更加簡(jian)單(dan)的方式,如果按(an)照(zhao)傳統的模式,我們必須(xu)給每個城市定(ding)義一(yi)個控制器(qi)類,然后在每個控制器(qi)類的index方法里面(mian)進行處理。 可是(shi)如果使(shi)用(yong)空控制器(qi)功能,這個問題就可以迎刃而解了。

我們(men)可以給項目定義一(yi)個(ge)Error控制器類

<?php
namespace app\index\controller;

use think\Request;

class Error 
{
    public function index(Request $request)
    {
        //根據當前控制器名來判斷要執行那個城市(shi)的操(cao)作
        $cityName = $request->controller();
        return $this->city($cityName);
    }
    
    //注意(yi) city方(fang)法 本身(shen)是 protected 方(fang)法
    protected function city($name)
    {
        //和$name這個城(cheng)市相(xiang)關的(de)處理
         return '當前城市' . $name;
    }
}

接(jie)下來,我們就可以在瀏覽器里面輸入

http://serverName/index/beijing/
http://serverName/index/shanghai/
http://serverName/index/shenzhen/

由于系統并不存(cun)在beijing、shanghai或者(zhe)shenzhen控制(zhi)器,因此會(hui)定位到空控制(zhi)器(Error)去執行,會(hui)看到依次(ci)輸出的結果是:

當前城市:beijing
當前城市:shanghai
當前城市:shenzhen

空控制器和(he)空操作還可以同時(shi)使(shi)用,用以完成更(geng)加復雜(za)的操作。

空控制器Error是可以定義的(de)

// 更改默認的(de)空(kong)控制器名
'empty_controller'      => 'MyError',

當(dang)找不(bu)到控制器(qi)的時候(hou),就會定位到MyError控制器(qi)類進行操作(zuo)。

文檔最后更新時間:2018-04-26 08:36:20

文檔
目(mu)錄

深色
模(mo)式

切換
寬(kuan)度