php框架控制器是什么意思,控制器定义

# 控制器的定义

HYPHP控制器采用了OOP方式进行访问调用.

控制器就是一个类, 而操作方法则是一个类成员函数

下面是一个默认的 **/Action/Index.php** 内容

~~~

namespace Action;

use HY\Action;

class Index extends Action {

public function Index(){

echo 'HY框架';

}

}

~~~

当我们访问 (如果我们直接访问首页 不增加参数 则会自动指向 Index控制器的Index() 方法)

+++

get:/

<<<

success

HY框架

<<<

+++

访问了 /?index 既是访问了index控制器

+++

get:/?index

<<<

success

HY框架

<<<

+++

访问了 /?index/index 既是访问了index控制器里的index() 方法

+++

get:/?index/index

<<<

success

HY框架

<<<

+++

访问了 /?index/test 既是访问了index控制器里的test() 方法

+++

get:/?index/test

<<<

Error

你的\Action\IndexAction没有存在Test操作方法

+++

当访问test就出错了 是因为Test() 并没有在Index中定义

Index中仅定义了 Index()

# 定义一个新控制器

控制器的定义采用驼峰法. 首字母大写.

接下来新建一个 **User** 控制器

在**/Action**目录下新建文件 **User.php** (注意第一位大写字母)

在**User.php**文件写入内容

~~~

namespace Action;

use HY\Action;

class User extends Action {

public function Index(){

echo '这里是User模块的Index方法';

}

}

~~~

而类的名称也是一样采用首字母大写的方式

**User**

继承了 **Action**

+++

get:/?User

<<<

success

这里是User模块的Index方法

+++

+++

get:/?User/Index

<<<

success

这里是User模块的Index方法

+++

同理, 如果你仅仅访问了User控制器 却没有输入Index , 框架还是会自动指向Index()函数, 如果你的User控制器中 没有Index()函数 则会出错

* * * * *

有朋友不明白 为什么访问 /?User/Index 就能触发 Action/User.php文件中的Index函数 而根目录并没有/User目录呀

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值