PHP 框架中间件实现

Posted wgchen~

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了PHP 框架中间件实现相关的知识,希望对你有一定的参考价值。

前言

中间件是很多 php 框架都提供的功能,在初次认识它的时候我感到惊讶和兴奋。因为它的作用太强大了,在没有中间件之前我们不得不将权限验证和一些公共操作都写在控制器方法里,然后控制器就会变得很臃肿,降低了可读性和可维护性。

但有了中间件我们就可以这些操作都写在中间件里,然后通过使用不同的中间件组合不仅能够实现需求还降低了代码的耦合度。

既然中间件百般好,那它到底是如何实现的呢?

我发现其重点就是要将多个中间件闭包(有些框架中间件并不是通过闭包实现但都属于 callable 的范畴,为了行文方便统称为闭包)通过 array_reduce 或循环的方式将其打包成为一个闭包的过程。

1 预热

以上是关于PHP 框架中间件实现的主要内容,如果未能解决你的问题,请参考以下文章

PHP必用代码片段

php开源一个MVC框架的诞生之中间件Middleware

服务器在管道中的“龙头”地位

百万级别QPS轻量级PHP框架Steeze介绍

Drupal 6 视图 2:PHP 片段

将非框架 PHP 项目移植到 Laravel 4.x