PHP中的钩子/插件架构

时间:2014-03-21 04:42:35

标签: php plugin-architecture

我需要在PHP中为项目实现一个钩子/插件架构。我发现了很多用PHP编写的文章和例子以及一些关于插件架构的信息,但我仍然无法清楚地理解它是如何工作的。对某人来说,这可能是一个真正愚蠢的问题,但我是这些概念的新手,真的需要找到一个明确的答案。钩子在插件架构中的作用是什么?钩子如何使应用程序更具可扩展性。我很乐意用PHP的例子来看答案。

谢谢。

1 个答案:

答案 0 :(得分:1)

简单来说,hook只不过是基于事件的体系结构中的事件处理程序。您可以通过处理程序(挂钩)订阅任何公共事件,并在事件发生时触发/回调。例如WordPress建立在基于事件的架构之上。

它的可扩展性如何?发布 - 订阅原则将事件源与其订阅者/处理程序/挂钩分离,因此两者可以在不相互影响的情况下发生变化。

示例:http://agafix.org/a-practical-guide-to-event-driven-programming-with-php/