I need to implement a hook/plugin architecture for a project in PHP. I found a lot of articles and examples written in php and some information on plugin architecture, but I still cannot clearly understand how this works. This may be a real stupid question to someone, but I am new to these concepts and really need to find a clear answer. What is really the role of a hook in plugin architecture? How does hooks can make an application more extensible. I'd love to see a answer with an example from PHP.

Thank you.

有帮助吗?

解决方案

In simple terms, hook is nothing but event handler in Event Based Architecture. You can subscribe any public event through your handler(hooks) and it will be fired/callback when that event happens. e.g. WordPress built upon the event based architecture.

How its extensible? publish-subscribe principle decouple the event source from its subscribers/handlers/hooks and so two can vary without affecting each other.

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

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top