php中的钩子是指Hook机制,它是从windows编程中流行开的一种技术,其主要思想是提前在可能增加代码的地方预设一个钩子,当我们需要重新修改代码时,把扩展的类或者方法挂载到这个点即可。
钩子即Hook机制,是从windows编程中流行开的一种技术。其主要思想是提前在可能增加功能的地方埋好预设)一个钩子,这个钩子并没有实际的意义,当我们需要重新修改或者增加这个地方的逻辑的时候,把扩展的类或者方法挂载到这个点即可。
(推荐教程:php图文教程)
hook插件机制的基本思想:
在项目代码中,你认为要扩展(暂时不扩展)的地方放置一个钩子函数,等需要扩展的时候,把需要实现的类和函数挂载到这个钩子上,就可以实现扩展了。
整个插件机制包含三个部分:
1、hook插件经理类:这个是核心文件,是一个应用程序全局Global对象。它主要有三个职责:
监听已经注册了的所有插件,并实例化这些插件对象。
注册所有插件。
当钩子条件满足时,触发对应的对象方法。
(视频教程推荐:编程入门)
2、插件的功能实现:这大多由第三方开发人员完成,但需要遵循我们经理类定义)的规则,这个规则是插件机制所规定的,因插件机制的不同而不同。
3、插件的触发:也就是钩子的触发条件。这是一小段代码,放置在你需要调用插件的地方,用于触发这个钩子。