ThinkPHP框架之空控制器
HOME代表的是模块 前台可以用Home 后台用Admin Model View Controller 统称为MVC
Model 是数据模型 主要是和数据库打交道的 View代表显示的模 Controller 控制器
MVC模式 都遵循“约定胜于配置” 必须要遵循规则
在Home文件夹下的 Conf文件夹中的 config.php 配置文件中 加入return array('SHOW_PAGE_TRACE'=>TRUE// 开启trace信息) 这样我们就可以进行调试或者查看错误了
ThinkPHP 中的common文件夹是TP框架自带的一些函数 conf文件夹下的convertion.php 含有TP所有的配置 尽量不要修改 Lang 语言包 Library 存放的都是核心类文件,其中的think文件夹里面含有很多的类文件 里面的controller.class.php 是所有控制器的父类
现在我在Home文件夹下的conf文件夹的config 文件中建了一个MainController.class.php文件 这其中有个test的方法,而这个test想要展示的是一个模板,那么我就要到view文件夹下建一个文件夹是和MainController是对应的 这个文件夹应该命名为Main,(我在Main文件夹下建了一个名为test.html的模板,那么我在MainController.class.php中调用的时候之间用 $this->display()//$this->show() 就可以了),同样的如果是IndexController.class.php 那么view文件夹下要建一个名为Index的文件夹
如果我要访问控制器MainController.class.php下的一个方法tess 而这个方法不存在,那么就会出现这种情况,如图所示
这样我们的所使用的框架及版本等等都会泄露,这样是非常不友好的
这时我们就要想办法把这些隐藏起来, 在MainController.class.php中做一个方法 名为_empty
funtion _empty()
{
echo"客官,您访问的方法不正确"; //这里也可以插入视图
}
如果我们访问的是一个不存在的控制器,那么也会泄露我们的信息 这样我们需要在文件夹Controller中建一个名为EmptyController的控制器
<?php namespace Home/Controller; use Think/Controller; class EmptyController extends Controller
{
function _empty() //如果顾客访问的是一个空的控制器,那么里面的方法必然也是空的
{
echo"客官,此控制器不存在";
}
}
ThinkPHP框架之空控制器的更多相关文章
- TP框架部分---空控制器
<?php namespace Admin\Controller; use Think\Controller; class DengLuController extends Controller ...
- 一次thinkphp框架 success跳转卡顿问题的解决
近期工作中遇到了一个奇怪的现象:thinkphp框架中一个控制器中执行success或者error跳转的时候,会卡10s甚至更久,而在其他控制器中测试却不会.于是开始着手调试,利用自定义的毫秒函数测试 ...
- 2016/5/6 thinkphp ①框架 ② 框架项目部署 ③MVC模式 ④控制器访问及路由解析 ⑤开发和生产模式 ⑥控制器和对应方法创建 ⑦视图模板文件创建 ⑧url地址大小写设置 ⑨空操作空控制器 ⑩项目分组
真实项目开发步骤: 多人同时开发项目,协作开发项目.分工合理.效率有提高(代码风格不一样.分工不好) 测试阶段 上线运行 对项目进行维护.修改.升级(单个人维护项目,十分困难,代码风格不一样) 项目稳 ...
- TP框架 ---空控制器和空操作
通过之前的学习我们知道了index.php是一个入口文件,如果没有这个入口文件的话,我们需要自己创建! [视图模板文件创建] 视图模板文件存放发位置在: 里面没有模板文件 如果我们想要访问Login控 ...
- ThinkPHP中的跨控制器调用与框架执行流程
一.跨控制器调用 UserController.class.php <?php namespace Home/Controller use Think/Controller class User ...
- thinkphp空控制器的处理
<?php namespace Admin\Controller; use Think\Controller; class DengLuController extends Controller ...
- Thinkphp 空操作、空控制器、命名空间
1.空操作 空操作是指系统在找不到请求的操作方法的时候,会定位到空操作(_empty)方法来执行,利用这个机制,我们可以实现错误页面和一些URL的优化. http://网址/index.php/Hom ...
- thinkphp的空控制器和空操作以及对应解决方法
在上篇随笔中我们已经知道了tp框架的四种访问方式,那么当在地址栏输入不存在的操作方法.控制器会怎么样呢? 先看一下定义: 空操作:一个对象(控制器)调用本身不存在的方法 空控制器:在实例化控制器对象的 ...
- TP框架基础 (二) ---空控制器和空操作
通过之前的学习我们知道了index.php是一个入口文件,如果没有这个入口文件的话,我们需要自己创建! [视图模板文件创建] 视图模板文件存放发位置在: 里面没有模板文件 如果我们想要访问Login控 ...
随机推荐
- SQL基本编程,分支语句,循环语句,存储过程,触发器
基本编程: 定义变量 declare @变量名 数据类型 赋值 set @变量名 = 值 select @变量名 = 值 取值打印 select @变量名 print @变量名 映射到结果集 打印到消 ...
- QT Creator 快速入门教程 读书笔记(一)
一 Qt简介 Qt 是一个跨平台的C++应用程序框架,支持Windows.Linux.Mac OS X.Android.iOS.Windows Phone.嵌入式系统等.也就是说,Qt 可以同时支持桌 ...
- 2015.07.20MapReducer源码解析(笔记)
MapReducer源码解析(笔记) 第一步,读取数据源,将每一行内容解析成一个个键值对,每个键值对供map函数定义一次,数据源由FileInputFormat:指定的,程序就能从地址读取记录,读 ...
- 极客君教你破解隔壁妹子的wifi密码,成功率高达90%
首先,给大家推荐一个我自己维护的网站: 开发者网址导航:http://www.dev666.com/ 破解wifi密码听起来很复杂,实际上也不是非常的复杂,极客君(微信公众帐号:极客峰)今天教大家如何 ...
- 串的模式匹配和KMP算法
在对字符串的操作中,我们经常要用到子串的查找功能,我们称子串为模式串,模式串在主串中的查找过程我们成为模式匹配,KMP算法就是一个高效的模式匹配算法.KMP算法是蛮力算法的一种改进,下面我们先来介绍蛮 ...
- 使用idea2017搭建SSM框架
搭建个SSM框架居然花费了我好长时间!特此记录! 需要准备的环境: idea 2017.1 jdk1.8 Maven 3.3.9 请提前将idea与Maven.jdk配置好,本次项目用的都是比较新的 ...
- 【转】译—游戏开发者应该如何应用Git和GitHub
原文地址:http://bbs.9ria.com/thread-259587-1-2.html "我确信Git是强大的,但是它看起来很复杂--我依然会坚持我当前的工作流"就像说&q ...
- POPTEST学员就业面试题目!!!!!
POPTEST学员就业面试题目!!!!! poptest是国内唯一一家培养测试开发工程师的培训机构,以学员能胜任自动化测试,性能测试,测试工具开发等工作为目标.(欢迎大家咨询软件测试工程师就业培训 ...
- Android查看stdout 和stderr
在默认状态下,Android系统有stdout和stderr(System.out和System.err)输出到/dev/null,在运 行Dalvik VM的进程中,有一个系统可以备份日志文 ...
- 极化SAR图像基础知识(2)
本篇主要关注物理含义 1.极化 电磁波在传播时,传播的方向和电场.磁场相互垂直,我们把电波的电场方向叫电波的极化.(i.e.依据电场E的方向来定义电磁波的极化). 如果电场矢量端点随时间变化的轨迹是一 ...