|
来源于:http://trac.seagullproject.org/wiki/Howto/PragmaticPatterns/FrontController 前端控制器概述前端控制器用来
初始化Seagull环境Seagull使用任务驱动器来使应用程序的设置尽可能是可配置的。任务对象可以添加到批处理作业并按顺序执行,有选择的接收数据作为参数。 这是一个批处理作业的实例: $batch = new SGL_TaskRunner(); $batch->addData($myData); $batch->addTask(new SGL_Task_GoToMarket()); $batch->addTask(new SGL_Task_StayHome()); $batch->addTask(new SGL_Task_EatRoastBeef()) $batch->main(); 你可能想到了,任务是可交替重用的对象,所以应该慎重使用。1) 设置Seagull环境涉及到设置应用程序路径,设置常量,载入配置,如果检测到旧的PHP版本则要确保向后兼容等。 然而前端控制器的主要任务是根据当前的请求创建一个过滤链。如果你想另行初始化应用程序或使用一个不同的过滤链或使用一种完全不同的方法,那么你可以通过继承SGL_FrontController自己写一个前端控制器。 代码实例前端控制器类的不同实例:
各种任务驱动器:
更多内容请查看
1)
这句话应该推敲一下
Tasks are interchangable, reusable objects that perform discreet .. you guessed it .. tasks
|