# 控制器的定义

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目录呀

php框架控制器是什么意思,控制器定义相关推荐

  1. Minor【 PHP框架】3.路由、控制器、视图

    框架Github地址:github.com/Orlion/Minor (如果觉得还不错给个star哦(^-^)V) 框架作者: Orlion 知乎:https://www.zhihu.com/peop ...

  2. 七、PHP框架Laravel学习笔记——资源控制器

    一.资源控制器 声明:资源控制器是某个特定场景下的产物,完全理解需要 PHP 项目基础: 比如开发过博客系统,留言帖子系统之类,具有类似思维,否则你懂的-: 只是学习了 PHP 基础,就立刻学习框架的 ...

  3. 什么是微控制器? 通用组件的定义特征和架构

    文章目录 写在前面 正文 什么是微控制器? 微控制器与微处理器 微控制器与数字信号处理器(DSP) 微控制器的要素 中央处理单元 存储器 外围设备 支持电路 下一篇文章 交个朋友 写在前面 原文链接 ...

  4. [UE][UE5]Gameplay框架,Actor,pawn,playerController(玩家控制器),Character(角色)之间的关系

    [UE][UE5]Gameplay框架,actor,pawn,playerController,Character之间的关系 Actor,pawn,playerController(玩家控制器),Ch ...

  5. Laravel框架中的路由和控制器

    路由 简介: 将用户的请求转发给相应的程序进行处理 作用:建立url和程序之间的映射 请求类型:get.post.put.patch.delete 目录:app/http/routes.php 基本路 ...

  6. 集合视图控制器(CollectionViewController) 、 标签控制器(TabBarController) 、 高级控件介绍...

      1 创建集合视图,设置相关属性以满足要求 1.1 问题 集合视图控制器UIConllectionViewController是一个展示大量数据的控制器,系统默认管理着一个集合视图UICollect ...

  7. 控制器模式_前控制器模式简介,第1部分

    控制器模式 It's interesting to see how people have passed judgement on several software programming conce ...

  8. 开源SDN控制器和商用SDN控制器一览

    以下是来自IT168收集的2014年可追寻到的开源SDN控制器和商用SDN控制器,此处转载以供大家知悉,更多控制器信息需要大家自己动手去查询和理解. 开源SDN控制器组织(随机排序,仅为了查看便利) ...

  9. php关于控制器和操作系统,ThinkPHP控制器学习(一)

    星空 多层控制器的使用 TP3.23对控制器做了更加细致的分层,除了默认的Controller层,还可以自定义事件控制层Event. 建立的方法是: 在模块第一级目录,即Controller层的同级目 ...

  10. 汽车域控制器分类(下):自动驾驶域控制器、车身域控制器

    上一篇讲了汽车域控制器中的动力域控制器.底盘域控制器.智能座舱域控制器,接下来讲自动计时域控制器.车身域控制器. 4.自动驾驶域控制器 随着自动驾驶的来临,其所涉及的感知控制.决策系统复杂性更高,与车 ...

最新文章

  1. 有耐心就能学好Linux
  2. (38)Spring Boot分布式Session状态保存Redis【从零开始学Spring Boot】
  3. 英雄无敌3版的仙剑奇侠传
  4. 怎样进行FineReader局域网中的分组工作
  5. OAuth2.0认证
  6. 两个分数化简比怎么化_我学《分数的意义》心得
  7. 如何备份服务器日志到其他服务器_KIWI Syslog日志服务器搭建及配置
  8. tinyxml2遍历所有节点_Python实现二叉树的遍历
  9. 推给我的广告都跟我最近看的内容有关系,怎么做到的?
  10. arm 饱和指令_ARM内核全解析,从ARM7,ARM9到CortexA7,A8,A9,A12,A15到CortexA53,A57
  11. 【docker】docker Portainer容器可视化管理工具使用文档
  12. Spring写第一个程序HelloSpring
  13. 代码上传到github上
  14. 【python】-- 队列(Queue)、生产者消费者模型
  15. 操作对象_word选择操作技巧:不同操作对象,选择方式不同?
  16. 评微软裁员测试:自动化测试并不能代替人工
  17. 报错信息为:value larger than specified precision allowed for this column
  18. 站在巨人的肩膀上还是站在巨人的脚底下
  19. 教你关闭烦人的“程序兼容性助手”~~~~~
  20. 也许你在到处找PS,不妨来这里看看

热门文章

  1. oracle 安装oui 15038,SuSE Linux上的Oracle11g-x64-ent安装有许多检查错误
  2. arduino定时器函数如何使用_Excel表格技巧—如何使用DELTA 函数
  3. unknown directive导致的nginx无法启动
  4. matlab greythresh,Matlab-图形算法和图像处理指南
  5. java 压缩js css,java YUI压缩JS跟CSS
  6. linux zip和tar的区别,Linux入门:tar、gzip、bzip2以及zip的区别
  7. 凝血酶分子机器人_了不得!这个机器人可以拟制癌细胞生长
  8. linux ls使用方法,Linux/Ubuntu ls命令详解使用格式和方法
  9. 【linux】zip unzip
  10. 找不到_我的圣诞礼物找不到了!