首页IT科技浅谈php设计模式的责任链模式论文怎么写(浅谈PHP设计模式的责任链模式)

浅谈php设计模式的责任链模式论文怎么写(浅谈PHP设计模式的责任链模式)

时间2025-09-19 16:49:14分类IT科技浏览5995
导读:概念: 责任链模式又叫做职责链模式,是属于行为型的一种。...

概念:

责任链模式又叫做职责链模式                ,是属于行为型的一种                。

责任链模式分为两种:

第一种像工厂流水线                       ,目的就让每一个环节都进行处理                       。

第二种像层层审批        ,如果其中一个对象无法处理                ,调用下一个对象来进行处理                       ,如果一旦能处理        ,链式就此停止        ,以此类推                       ,第二种为了程序的健壮性               ,至少得需要一个兜底的模块        ,防止穿透责任链        。 适用场景:

对请求参数进行逐层过滤                        ,用于框架的中间件的开发场景(Laravel Middleware)                。日志框架               ,每个链元素自主决定如何处理日志消息                       。

优点:

简化了调用端的操作,调用端无须关心请求的处理细节和请求的传递过程                        ,因为请求会自动进行传递到整条链路        。

缺点:

期间实例化的很多的对象                       ,其实完全可以用普通的if去替代        。

调试不方便                       。 //责任链模式好像没有固定的实现方案,只是一种思想                ,所以实现一个展示活跃类型的的功能               。这种方式方便调用端处理                       ,但是依赖在类的内部        ,不利于后期维护        。 //也可以优化调用和实例化在类的外部进行                ,缺点是会增加调用端的复杂度                       ,有点是可控度更高                        。到底如何实现这要看应用场景        ,但是链式的思想是一致的               。 class shortTerm { private function next($time) { return (new OneDay())->show($time); } public function show($time) { if($time <= 3) { return 刚刚活跃; } return $this->next($time); } } class OneDay { private function next($time) { return (new ThreeDay())->show($time); } public function show($time) { if($time <= 24) { return 当天活跃; } return $this->next($time); } } class ThreeDay { private function next($time) { return (new SevenDay())->show($time); } public function show($time) { if($time <= 72) { return 三日内活跃; } return $this->next($time); } } class SevenDay { public function show($time) { return 不活跃; } } //调用端 echo (new shortTerm())->show(600);

创心域SEO版权声明:以上内容作者已申请原创保护,未经允许不得转载,侵权必究!授权事宜、对本内容有异议或投诉,敬请联系网站管理员,我们将尽快回复您,谢谢合作!

展开全文READ MORE
phpcms表单(phpcms分页显示条数在哪里修改)