空模块的概念是指当系统找不到指定的模块名称的时候,系统会尝试定位空模块(EmptyAction),利用这个机制我们可以用来定制错误页面和进行URL的优化。
现在我们把前面的需求进一步,把URL由原来的
http://serverName/index.php/City/shanghai/
变成 http://serverName/index.php/shanghai/
这样更加简单的方式,如果按照传统的模式,我们必须给每个城市定义一个Action类,然后在每个Action类的index方法里面进行处理。 可是如果使用空模块功能,这个问题就可以迎刃而解了。 我们可以给项目定义一个EmptyAction类
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
|
<?php
class EmptyAction extends Action{
public function index(){
$cityName
= MODULE_NAME;
$ this ->city($cityName);
}
protected function city($name){
echo '当前城市' .
$name;
}
}
|
接下来,我们就可以在浏览器里面输入http://serverName/index.php/beijing/http://serverName/index.php/shanghai/http://serverName/index.php/shenzhen/由于系统并不存在beijing、shanghai或者shenzhen模块,因此会定位到空模块(EmptyAction)去执行,会看到依次输出的结果是:当前城市:beijing当前城市:shanghai当前城市:shenzhen空模块和空操作还可以同时使用,用以完成更加复杂的操作。
分享到:
相关推荐
网上很多关于thinkPHP5空模块、空控制器、空方法的处理,但是不是很繁琐就是根本概念都没搞清,很多人直接把空模块理解成了空控制器空方法,这个是本人常用的处理方法,总结出来给大家分享下,可供参考
ThinkPHP教程。。。。ThinkPHP教程。。。。
ThinkPHP实现用户注册、登录模块 一、 开发环境 1、环境搭建:Windows 7+Apache 2.4.18+MySQL 5.7.11+PHP 7.1.0。 2、文本编辑器:Sublime 3。 二、主要技术 本案例主要使用ThinkPHP 3.2.3框架和PHP 7中的PDO数据...
thinkphp TPM 手机模版 APP模块
一个好的Thinkphp教程 对于初学者很有用哦!
主要介绍了thinkphp中空模板与空模块的用法,以实例形式演示了空模板与空模块具体实现方法,一般空模块多用于系统找不到指定模块的情况,如定位错误页面与URL优化等情况,具有一定的实用价值,需要的朋友可以参考下
后盾网 ThinkPHP 教程 后台管理 模板 Admin
ThinkPHP3.1系列教程
P_框架资料_ThinkPHP教程
ThinkPHP的空模块和空操作也是很有实用意义的功能,空模块的概念就是当ThinkPHP找不到指定模块的时候,它会尝试去定位空模块(EmptyAction),执行空模块里面的index操作。同理,空操作也是同样的概念,当系统找不到...
thinkphp全套视频教程(附完整源码)
thinkphp详细高级教程 think框架 php框架 从设计到seo,从技巧到调试,详细参考资料。
ThinkPHP5.0入门实例教程,介绍了thinkphp知识,及开发实例。
ThinkPHP内置了A方法与R方法这两个特殊的大写字母方法来处理跨模块调用的问题。 目前Index模块内有index操作User模块有showName操作User模块及showName操作具体代码如下: <?php class UserAction extends ...
2014年辛星关于ThinkPHP教程的夏季版的教程的配套源代码,希望能对大家有所帮助。
最早诞生于2006年初,原名FCS,2007年元旦正式更名为ThinkPHP,并且遵循Apache2开源协议发布。早期的思想架构来源于Struts,后来经过不断改进和完善,同时也借鉴了国外很多优秀的框架和模式,使用面向对象的开发结构...
教程名称:ThinkPHP搭建CMS项目视频教程(20讲)课程目录:【】第1讲.ThinkPHP搭建CMS项目设计01【】第20讲.ThinkPHP搭建CMS功能整合05【】第2讲.ThinkPHP搭建CMS项目设计02【】第3讲.ThinkPHP搭建CMS构建项目01【】...
教程名称:ThinkPHP3.1.3使用视频教程(45集)课程目录:【】01.ThinkPHP3.1.3使用视频教程--教程视频介绍【】02.ThinkPHP3.1.3使用教程--框架、OOP、MVC概念描述【】03.ThinkPHP3.1.3使用视频教程【】04.ThinkPHP...