Zend_Controller是Zend Framework的MVC体系的核心部份。MVC指Zend_Controller_Front实现了Zend_Controller体系具有可扩展性,可以通过继承已有的类或者自己写个新的类来实现各种接口和抽象类,也可以编写插件或者助手类(helper)来增强系统的功能。
html目录。
html/.htaccess,编辑其内容为:
http://framework.zend.com/roadmap/components,其服务器路径为/roadmap/components,则会映射到roadmap控制器和components Action。如果不存在action,则会调用index这个action。如果控制器不存在,则会自动调用index控制器。(按照Apache的命名惯例,自动映射到DirectoryIndex文件)
Zend_Controller的dispatcher会根据控制器的名称找到具体的控制器类。通常它会把控制器名称加上Controller。因此,上例中roadmap控制器与类RoadmapController相对应。
Action字符串。因此,上例中components这个action与 componentsAction相对应。最终我们访问URL调用的是RoadmapController->componentsAction()
application/controllers/IndexController.php,输入:
ViewRenderer根据控制器的名称(例如index)和当前的action的名称(例如index)来决定使用哪个模板文件。默认情况下,模板文件使用.phtml作为扩展名。 也就是说,上例中,我们将使用index/index.phtml模板文件。 另外,ViewRenderer自动假设views目录与控制器目录平级,作为视图层的基础目录,而实际的模板文件则放置在views/scripts/ 子目录下。因为我们的模板文件应该是 application/views/scripts/index/index.phtml。
application/views/scripts/目录下,而默认的模板是application/views/scripts/index/index.phtml。我们来创建这个文件,加入一些HTML代码:
ErrorController,并且其中有一个名为errorAction的Action:
application/controllers/ErrorController.php,你也需要为它创建一个模板文件,即application/views/scripts/error/error.phtml。其中的内容如下:
出现了一个错误,请重试。
]]>example.com是你的站点域名,那么下面的URL都会带你访问你刚才创建的页面:
http://example.com/http://example.com/indexhttp://example.com/index/index