空操作和空控制器

空操作

空操作是指系统在找不到请求的操作方法的时候,会定位到当前控制器的空操作( _empty )方法来执

行。

举例:

<?php
namespace Home\Controller;
use Think\Controller;
class CityController extends Controller{
public function _empty($name){
//把所有城市的操作解析到city方法
$this->city($name);
}
//注意 city方法 本身是 protected 方法
protected function city($name){
//和$name这个城市相关的处理
echo '当前城市' . $name;
}

}

接下来,我们就可以在浏览器里面输入
http://serverName/index.php/Home/City/beijing/
http://serverName/index.php/Home/City/shanghai/

http://serverName/index.php/Home/City/shenzhen/

输出的结果为

北京

上海

深圳

空控制器

空控制器的概念是指当系统找不到请求的控制器名称的时候,系统会尝试定位空控制器(

EmptyController )。

举例

<?php
namespace Home\Controller;
use Think\Controller;
class EmptyController extends Controller{
public function index(){
//根据当前控制器名来判断要执行那个城市的操作
$cityName = CONTROLLER_NAME;
$this->city($cityName);
}
//注意 city方法 本身是 protected 方法
protected function city($name){
//和$name这个城市相关的处理
echo '当前城市' . $name;
}
}
接下来,我们就可以在浏览器里面输入
http://serverName/index.php/Home/beijing/
http://serverName/index.php/Home/shanghai/

http://serverName/index.php/Home/shenzhen/

会输出:

beijing

shanghai

shenzhen

总结:使用空操作和空控制器可以优化url,使输入的url更精简,更清晰。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值