ThinkPHP开发指南-控制器之空操作
来自站长百科
导航:返回上一页
空操作是指系统在找不到指定的操作方法的时候,会定位到空操作(_empty)方法来执行,利用这个机制,我们可以实现错误页面和一些URL的优化。
例如,我们前面用URL路由实现了一个城市切换的功能,下面我们用空操作功能来重新实现。我们只需要给CityAction类定义一个_emtpy (空操作)方法:
PHP代码
Class CityAction extends Action{ Public function _empty(){ // 把所有城市的操作都解析到city方法 $cityName = ACTION_NAME; $this->city($cityName); }
// 注意city方法本身是protected方法
PHP代码
Protected function city($name){ // 和$name 这个城市相关的处理 Echo ('当前城市: '.$name); } }
接下来,我们就可以在浏览器里面输入
http://<serverName>/index.php/City/beijing/ http://<serverName>/index.php/City/shanghai/ http://<serverName>/index.php/City/shenzhen/
会看到依次输出的结果是:
当前城市:beijing 当前城市:shanghai 当前城市:shenzhen
可以看出来,和用URL路由实现的效果是一样的,而且不需要定义路由定义文件。