The DoYouHaoBaby PHP Framework中文开发文档手册
Copyright(c) DoYouHaoBaby.NET All Rights Reserved.
[ 控制器 ]

DoYouHaoBaby 的控制器就是模块类,通常位于项目的Lib/Action 目录下面。类名就是模块名( 首字母大写 )加上Controller后缀,例如IndexController类就表示了index模块。

如图所示:

控制器类必须继承系统的Controller基础类,这样才能确保使用Controller类内置的方法。而index操作其实就是IndexController类的一个公共方法,所以我们在浏览器里面输入URL:

http://localhost/doyouhaobaby/TestApp/index/index

其实就是执行了IndexController类的index(公共)方法。

如图所示:

每个模块的操作并非一定需要有定义操作方法,如果我们只是希望输出一个模板,既没有变量也没有任何的业务逻辑,那么只需要按照规则定义好操作对应的模板文件即可,而不需要定义操作方法。例如,我们在IndexController中如果没有定义demo方法,但是存在对应的index_demo.html 模板文件,那么下面的URL访问依然可以正常运作:

http://localhost/doyouhaobaby/TestApp/index/demo

因为系统找不到IndexController类的demo方法,会自动定位并且查找index_demo.html模板文件,然后直接渲染输出。

控制器中还设计了模块分组、空操作、空模块、前置和后置操作等功能,后面会有详细的描述。