Tp框架 之对控制器的一些操作等

在浏览器中输入tp框架入口文件的地址,如图

Tp框架 之对控制器的一些操作等_第1张图片

要注意,localhost/后面跟的是www的下一级,tp文件的上一级,因为我直接把tp文件做成了www目录的下一级,所以我写的地址localhost后面跟的就是tp

打上目录后回车,就会出来tp的主页面,如图

Tp框架 之对控制器的一些操作等_第2张图片

 

 再随便打上一个没有的操作方法,如

Tp框架 之对控制器的一些操作等_第3张图片

 

打出的这个页面,暴露了很多信息,不太安全,所以我们要控制住,。

像这种操作本来没有的,叫做空操作

要改变这种,我们可以提供一种方法

从这个目录下找

Tp框架 之对控制器的一些操作等_第4张图片

 

可以在这个文件中查找双下划线打头的call方法

Tp框架 之对控制器的一些操作等_第5张图片

在这个位置搜到了call方法

Tp框架 之对控制器的一些操作等_第6张图片

当我们进行空操作的时候,它会走这个方法里面的else

我们要解决空操作,有两种方法,要么让它走上面的if,要么走上面的elseif

 先来看elseif

我们可以给这种方法做一个模板

Tp框架 之对控制器的一些操作等_第7张图片

像这个test,没有的话,我们就要做一个test模板

在这个路径下新建一个test.html

Tp框架 之对控制器的一些操作等_第8张图片

在test文件里面就可以写html代码了

Tp框架 之对控制器的一些操作等_第9张图片

保存后刷新一下浏览器

Tp框架 之对控制器的一些操作等_第10张图片

这样就能输出一句话了

可能控制住空操作,但这种方式不好

如果用户不写test了,写个别的,依然还是不行

Tp框架 之对控制器的一些操作等_第11张图片

只有在输入test才可以

Tp框架 之对控制器的一些操作等_第12张图片

所以这种方式是不太现实的

那我们再来看另一种方式

这个需要我们在自己的控制器里再加一个方法

控制器的目录在上篇博客中有

保存后刷新一下页面

Tp框架 之对控制器的一些操作等_第13张图片

再随便输一个

Tp框架 之对控制器的一些操作等_第14张图片

 

 再改一个

Tp框架 之对控制器的一些操作等_第15张图片

加上这个方法之后,用户输入任何不存在的,都会输出这句话

这样就把空操作给控制住了

到时候做网页的时候,可以把这个页面做的好看一点

除了这个操作方法之外,还有一个

有可能控制器也会写错

Tp框架 之对控制器的一些操作等_第16张图片

下面我们就来做一下怎么控制空控制器

在控制器这里新建一个文件

Tp框架 之对控制器的一些操作等_第17张图片

里面写上内容

Tp框架 之对控制器的一些操作等_第18张图片

然后运行一下

Tp框架 之对控制器的一些操作等_第19张图片

再重新随便改个控制器

Tp框架 之对控制器的一些操作等_第20张图片

这样就把空控制器给控制好了

来总结一下这两种情况

空操作的话,就在控制器里面加_empty方法

空控制器的话,就在controller里面新建一个控制器,控制器里面,一样要写_empty方法

如果在控制器里要访问其他方法

在控制器里先写两个方法

Tp框架 之对控制器的一些操作等_第21张图片

怎么样在test里面访问ceshi方法

在test里面写这样一句代码

Tp框架 之对控制器的一些操作等_第22张图片

刷新一下页面,试试能不能调出来

Tp框架 之对控制器的一些操作等_第23张图片

运行成功

再来看一下跨控制器怎么来调用

新建一个控制器

Tp框架 之对控制器的一些操作等_第24张图片

在里面添加内容,然后输出一句话

Tp框架 之对控制器的一些操作等_第25张图片

还是用Login控制器的内容,test调用mtest的内容

Tp框架 之对控制器的一些操作等_第26张图片

 

 然后运行一下页面,看看能不能调取成功

Tp框架 之对控制器的一些操作等_第27张图片

运行成功

跨控制器访问,我们可以通过A方法,造Main控制器,然后直接调用它里面的内容就可以了

除了这种方式,还有一种方式

Tp框架 之对控制器的一些操作等_第28张图片

造一个新的Main控制器,然后调用里面的内容,运行一下

Tp框架 之对控制器的一些操作等_第29张图片

运行成功

所以跨控制器访问有两种方式

一种是new 一个控制器,另一种是用A方法

 

再来看一下跨模块控制器访问能不能行

找到Shop目录下的另一个模块

Tp框架 之对控制器的一些操作等_第30张图片

然后在Home里面新建一个控制器

Tp框架 之对控制器的一些操作等_第31张图片

然后在里面输上内容

Tp框架 之对控制器的一些操作等_第32张图片

下面再来写Login控制器的内容,还是让test页面来显示

Tp框架 之对控制器的一些操作等_第33张图片

 

 还是使用A方法,多加了一个Home模块,这里的斜杠,用的是路径的斜杠

来运行一下看看行不行

Tp框架 之对控制器的一些操作等_第34张图片

运行成功,说明跨模块访问,也可以用A方法,在跨控制器的基础上多加一个模块名就可以,如果加模块名的话就是该模块下的控制器,如果不加模块名的话,就是当前模块的控制器

当然跨模块访问也可以使用new,来看一下怎么写

Tp框架 之对控制器的一些操作等_第35张图片

这个使用的是命名空间的知识下一篇博客里会讲

来运行一下看看行不行

Tp框架 之对控制器的一些操作等_第36张图片

运行成功

反斜杠的意思就是初始命名空间的意思

除了这两种方法还有一种

R方法

Tp框架 之对控制器的一些操作等_第37张图片

这样写就可以把Main控制器下的mtest调出来了

如果要调别的模块的话,可以这样写

Tp框架 之对控制器的一些操作等_第38张图片

运行一下

Tp框架 之对控制器的一些操作等_第39张图片

运行成功

A方法是造对象

R方法是调用方法

 

转载于:https://www.cnblogs.com/qishuang/p/6529058.html

你可能感兴趣的:(Tp框架 之对控制器的一些操作等)