空模块的概念是指当系统找不到指定的模块名称的时候,系统会尝试定位空模块(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.1通过一系列规范和约定,简化了...
### ThinkPHP框架基础教程——李炎恢版 #### 一、获取ThinkPHP ThinkPHP是一款遵循MVC(Model-View-Controller)设计模式且面向对象的免费开源PHP框架。为了开始学习并使用ThinkPHP框架,首先需要从官方网站下载...
- URL访问和模块设计的概念,以及如何定义模块和控制器。 - 命名空间、自动加载和Traits的使用,有助于代码组织和复用。 - API友好的配置,包括路由模式、定义、变量规则、组合和快捷方式。 - 路由绑定配置作用域和...
ThinkPHP的控制器设计包括自动定位控制器、资源控制器、请求控制器的定义和初始化、前置操作、跳转和重定向、空操作以及多级控制器分层等。 模型和数据库模块是框架中处理数据的核心,包括模型的初始化、查询事件、...
控制器方面,手册提供了控制器定义、前置操作、跳转和重定向、空操作和空控制器、分层控制器的实现方法,同时介绍了资源控制器、控制器中间件的使用。 数据库方面,详细介绍了请求、HTTP头信息、请求对象、请求信息...
在URL访问方面,ThinkPHP5.1支持模块设计,可以通过命名空间来管理不同的模块。容器和依赖注入则提供了更灵活的对象管理机制。Facade(外观)模式简化了复杂的对象调用过程,使得开发者可以更方便地进行开发。 路由...
此外,手册还详细讲解了ThinkPHP5.0的控制器功能,包括自动定位、资源控制器、请求控制器定义、控制器初始化、前置操作、跳转和重定向、空操作、空控制器、多级控制器、分层控制器、Rest控制器、HTTP头信息、请求...
- **版本推荐**:本快速入门教程基于3.2.3版本编写,尽管多数特性在3.2版本中也已存在,但强烈建议学习者使用3.2.3版本来完成本教程的学习,以获取最佳实践效果。 #### 二、ThinkPHP3.2.3下载与安装 - **官方下载...
ThinkPHP5.0作为一款高性能的PHP开发框架,致力于为API开发和WEB应用开发提供一个简洁而实用的...对于新入门的开发者,建议首先阅读官方提供的《5.0入门系列教程》来更好地掌握ThinkPHP5.0框架的核心特性和使用方法。
【描述】虽然描述信息为空,但从"博文链接:https://victor-liao.iteye.com/blog/2062687"我们可以推测,这个"ThinkPHP demo"可能包含了作者Victor Liao在该博客中讨论的特定实践案例或教程内容。这个链接指向的博客...
ThinkPHP5.0提供了详尽的开发手册,手册包含了对安装、开发规范、目录结构、基础架构配置、生命周期、入口文件、URL访问、模块设计、命名空间、自动加载、引入API友好配置目录、配置格式、配置加载、读取配置、动态...
在了解了ThinkPHP生成静态文件的具体方法后,还可以通过访问一些相关专题,如《ThinkPHP入门教程》、《ThinkPHP模板操作技巧总结》、《ThinkPHP常用方法总结》、《Smarty模板入门基础教程》以及《PHP模板技术总结》...
ThinkPHP作为国内广泛使用...通过阅读ThinkPHP的官方文档和其他相关教程,如《ThinkPHP入门教程》、《thinkPHP模板操作技巧总结》和《CodeIgniter框架进阶教程》等,可以进一步加深对这个方法以及ThinkPHP框架的理解。
最后,文中提醒读者,关于ThinkPHP的更多相关内容,可以参阅网站提供的《ThinkPHP入门教程》、《ThinkPHP模板操作技巧总结》、《ThinkPHP常用方法总结》、《smarty模板入门基础教程》以及《PHP模板技术总结》等专题...
综合以上信息,我们可以知道这套源码是一个基于ThinkPHP框架的空包网站系统,包含了完整的前端样式、后台逻辑、数据库结构以及支付接口,还附带了安装教程,适合对PHP和电商运营有一定了解的开发者进行二次开发和...
手册接着介绍了如何进行控制器的自动定位、资源控制器、请求控制器定义、控制器初始化、前置操作、跳转和重定向、空操作、空控制器、多级控制器、分层控制器、Rest控制器、HTTP头信息、请求信息、输入变量、更改变量...
本教程将深入讲解如何在Windows Server 2012 R2上配置这个强大的服务器环境,并解决ThinkPHP框架可能出现的500错误。 首先,我们需要安装IIS。在服务器管理器中,点击“添加角色和功能”,然后在向导中选择“角色...