通过清心醉

ZEND认识篇->MVC的执行结构及编写自己的一个简单控制器

首 先必须开启apache的riterule功能,具体的可以GOOGLE。

比如作者的测试环境,默认目录为C:\xampp\htdocs 做为ZEND框架的主目录(同时也为apache的WEB根目录)

创建好了ZEND框架并且复制了ZEND库文件到library.

由于访问的是htdocs目录,但这目录内并没有index.php等引导文件。我们自己新建一个index.php文件

写入以下代码:

<?php

Header(“Location: /public/index.php”); #实现跳转到public目录下的index.php

?>

上一篇作者已经说了如何的创建自己的ZEND框架环境。

现在我们要来实现一个自己的MVC的简单功能。(其实只是VC视图和控制器,简单开始嘛)

基本执行流程:

通过riterule机制,给予访问的页面转到index.php

#htodcs/public/index.php

index.php里执行了一些基本的初始化工作之后

实例化了一个$application = new Zend_Applicatio

在这里包含了配置文件APPLICATION_PATH . ‘/configs/application.ini’

$application调用bootstrap()->run();

跳转到了Bootstrap.php

然后交给控制器IndexController.php

执行了indexAction()函数 #默认被执行了

调用/viesw/scripts/index.phtml视图

控制器的命名方法及规法:

比如要新增一个控制器text

Controllers文件夹里增加一个textController.php 文件

#在这主意,控制器的命名为<名称>+<Controller>

然后我们来编写text控制器的方法:

<?php

#在这里必须继承Zend_Controller_Action,否则该类就会被认为只是一个普通的类而不是控制器

class textController extends Zend_Controller_Action

{

public function init(){

#默认自动调用方法   可以写一个MYSQL连接类继承  Zend_Controller_Action来实现MYSQL连接的初始化等工作。

}

public function loginAction() #后面的Action不可少。

{

#自己的登录函数

$this->render(“login”);

#找到当前text控制器视图=text里文件为login的文件

#说白点就是include””;只是不需要自己加后缀和路径

#具体render函数可以选择后按F3查看

}

}

?>

然后我们还要有个视图,用来显示登录成功。

views/scripts加个文件夹,取名为text#必须和控制器名相同

在这text文件夹里面就是专门放text+Controller这个控制器对应的视图

我们在/views/scripts/text目录下增加个login.phtml视图文件(视图文件可以为php.html等)

我们来增加内容:

<h1>登录成功</h1>

如果没配置根目录index.php跳转,可以使用

127.0.0.1:88/public/text/login方式来访问。是可以正确的打开的。

这样,一个属于我们自己的简单控制器就起来了。

关于作者

清心醉 administrator

发表评论

请输入验证码: