php中的钩子是什么意思

  • 来源:网络
  • 更新日期:2020-08-06

摘要:php中的钩子是指Hook机制,它是从windows编程中流行开的一种技术,其主要思想是提前在可能增加代码的地方预设一个钩子,当我们需要重新修改代码时,把扩展的类或者方法挂载到这个点

php中的钩子是指Hook机制,它是从windows编程中流行开的一种技术,其主要思想是提前在可能增加代码的地方预设一个钩子,当我们需要重新修改代码时,把扩展的类或者方法挂载到这个点即可。

钩子即Hook机制,是从windows编程中流行开的一种技术。其主要思想是提前在可能增加功能的地方埋好(预设)一个钩子,这个钩子并没有实际的意义,当我们需要重新修改或者增加这个地方的逻辑的时候,把扩展的类或者方法挂载到这个点即可。

(推荐教程:php图文教程)

hook插件机制的基本思想:

在项目代码中,你认为要扩展(暂时不扩展)的地方放置一个钩子函数,等需要扩展的时候,把需要实现的类和函数挂载到这个钩子上,就可以实现扩展了。

整个插件机制包含三个部分:

1、hook插件经理类:这个是核心文件,是一个应用程序全局Global对象。它主要有三个职责:

监听已经注册了的所有插件,并实例化这些插件对象。

注册所有插件。

当钩子条件满足时,触发对应的对象方法。

(视频教程推荐:编程入门)

2、插件的功能实现:这大多由第三方开发人员完成,但需要遵循我们(经理类定义)的规则,这个规则是插件机制所规定的,因插件机制的不同而不同。

3、插件的触发:也就是钩子的触发条件。这是一小段代码,放置在你需要调用插件的地方,用于触发这个钩子。