南斗工作组

很多东西不记下来,总归是回忘记的

[原创]设计分发器(Dispatcher)--- PHP框架编写123

| |
22:28 , P.Qingliang
如何设计分发器(Dispatcher)
有了对MVC模式的简单认识,我们就可以正式开始框架的设计了(参见http://www.nd21.com/read.php/61.htm)。
从上面链接的示范代码中我们可以大致的了解分发器的职责:解析web端请求(GET方式)为某个控制的动作,也就是简单的路由功能。其次,分发器还需要将更多的请求参数传递给控制器,能够提供出错处理(当控制器或者控制器的方法不存在时),能够进行重定向等等功能。我们可以根据这些定义出分发器的基本框架:


代码的执行过程很简单:
分发器开始工作 --> 获得控制器 -->获得方法 -->执行指定的控制器的指定方法
另外我们提供了一个_onControllerNotExists 方法,相当于一个回调函数(我们可以将它设计成一个回调函数),当控制器指定方法出错时会被调用。这样我们的分发器就可以工作了。

注意到我在类中很多方法和属性都设计成protected类型,用意是希望用户根据自己的要求派生分发器类,例如需要权限控制的分发器。
最后编辑: Model.King 编辑于July 3, 2008 22:31
类别:PHP相关 | Tags: , , , , , | 0 条评论, 83 次阅读
网友评论(0):
发表评论:

昵称: 
电邮:
网址: