ThinkPHP空模块和空操作详解


Posted in PHP onJune 30, 2014

ThinkPHP的空模块和空操作也是很有实用意义的功能,空模块的概念就是当ThinkPHP找不到指定模块的时候,它会尝试去定位空模块(EmptyAction),执行空模块里面的index操作。同理,空操作也是同样的概念,当系统找不到指定模块下的操作方法的时候,就会尝试去定位空操作方法(empty)。其实很好理解,就有点类似php虚拟主机里面的自定义404页面,但它比自定义404更加灵活,利用这个机制,我们可以实现错误页面和一些URL的优化,下面分别详细介绍下空模块和空操作的写法。

1.空模块,在项目中定义EmptyAction类:

<?php
public class EmptyAction extends Action {
public function index(){
echo "当前模块不存在";
  }
 }
?>

这就是一个简单的空模块类,当然您也可以在里面做一些更加复杂的操作,一切都得根据项目的需求来写,这里只是做了演示。

2.空操作,空操作即在指定的模块下面定义,比如说,我们在User这个模块,也就是UserAction类下面定义一个空操作。

<?php
class UserAction extends Action
{
public function index()
{
$this->display();
  }
public function demo(){$this->display();
  }
public function _empty(){
   //该方法即为空操作
   echo '当前操作不存在';
  }
 }
?>

代码很简单,这就是一个空方法,并且空模块和空操作还可以同时使用,用以完成更加复杂的操作。

PHP 相关文章推荐
PHP 向右侧拉菜单实现代码,测试使用中
Nov 03 PHP
PHP+MYSQL会员系统的登陆即权限判断实现代码
Sep 23 PHP
基于PHP读取TXT文件向数据库导入海量数据的方法
Apr 23 PHP
smarty模板中拼接字符串的方法
Feb 14 PHP
ThinkPHP模版中导入CSS和JS文件的方法
Nov 29 PHP
PHP连接MySQL数据的操作要点
Mar 20 PHP
PHP发送AT指令实例代码
May 26 PHP
smarty的section嵌套循环用法示例
May 28 PHP
PHP重定向与伪静态区别
Feb 19 PHP
PHP+JS实现的实时搜索提示功能
Mar 13 PHP
基于php伪静态的实现方法解析
Jul 31 PHP
基于php解决json_encode中文UNICODE转码问题
Nov 10 PHP
ThinkPHP视图查询详解
Jun 30 #PHP
php中eval函数的危害与正确禁用方法
Jun 30 #PHP
PHP登录环节防止sql注入的方法浅析
Jun 30 #PHP
PHP获取时间排除周六、周日的两个方法
Jun 30 #PHP
PHP网页游戏学习之Xnova(ogame)源码解读(十六)
Jun 30 #PHP
PHP网页游戏学习之Xnova(ogame)源码解读(十五)
Jun 30 #PHP
解析PHP强制转换类型及远程管理插件的安全隐患
Jun 30 #PHP
You might like
PHP之sprintf函数用法详解
2014/11/12 PHP
PHP简单实现遍历目录下特定文件的方法小结
2017/05/22 PHP
php获取用户真实IP和防刷机制的实例代码
2018/11/28 PHP
PHP观察者模式定义与用法实例分析
2019/03/22 PHP
记录几个javascript有关的小细节
2007/04/02 Javascript
js判断变量是否空值的代码
2008/10/26 Javascript
JavaScript中number转换成string介绍
2014/12/31 Javascript
jQuery超精致图片轮播幻灯片特效代码分享
2015/09/10 Javascript
举例说明如何为JavaScript的方法参数设置默认值
2015/11/17 Javascript
微信小程序 Record API详解及实例代码
2016/09/30 Javascript
JavaScript中定义对象原型的两种使用方法
2016/12/15 Javascript
bootstrap table配置参数例子
2017/01/05 Javascript
jQuery 实现图片的依次加载图片功能
2017/07/06 jQuery
使用JS实现图片轮播的实例(前后首尾相接)
2017/09/21 Javascript
Vue项目中设置背景图片方法
2018/02/21 Javascript
Linux Centos7.2下安装nodejs&amp;npm配置全局路径的教程
2018/05/15 NodeJs
vue 属性拦截实现双向绑定的实例代码
2018/10/24 Javascript
如何利用javascript接收json信息并进行处理
2020/08/06 Javascript
微信小程序实现文件预览
2020/10/22 Javascript
Python中的字符串替换操作示例
2016/06/27 Python
python二维码操作:对QRCode和MyQR入门详解
2019/06/24 Python
python循环输出三角形图案的例子
2019/11/22 Python
OpenCV+python实现实时目标检测功能
2020/06/24 Python
Python如何优雅删除字符列表空字符及None元素
2020/06/25 Python
python爬虫基础之urllib的使用
2020/12/31 Python
CSS3中的常用选择器使用示例整理
2016/06/13 HTML / CSS
美国中西部家用医疗设备商店:Med Mart(轮椅、踏板车、升降机等)
2019/04/26 全球购物
美国便宜的横幅和标志印刷在线:Best of Signs
2019/05/29 全球购物
涉外文秘个人求职的自我评价
2013/10/07 职场文书
法人委托书范本格式
2014/09/15 职场文书
2014年会计人员工作总结
2014/12/10 职场文书
中学生综合素质自我评价
2015/03/06 职场文书
向雷锋同志学习倡议书
2015/04/27 职场文书
检察院起诉意见书
2015/05/20 职场文书
毕业酒会致辞
2015/07/29 职场文书
使用Nginx的访问日志统计PV与UV
2022/05/06 Servers