广告
返回顶部
首页 > 资讯 > 精选 >tp5框架中的hook机制是什么
  • 669
分享到

tp5框架中的hook机制是什么

2023-06-15 00:06:40 669人浏览 独家记忆
摘要

这篇文章主要介绍tp5框架中的hook机制是什么,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!1. 官方解释行为(Behavior)是ThinkPHP扩展机制中比较关键的一项扩展,行为既可以独立调用,也可以绑定到某个

这篇文章主要介绍tp5框架中的hook机制是什么,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!

1. 官方解释

行为(Behavior)是ThinkPHP扩展机制中比较关键的一项扩展,行为既可以独立调用,也可以绑定到某个标签中进行侦听,在官方提出的CBD模式中行为也占了主要的地位,可见行为在Thinkphp框架中意义非凡。

2. TP5自带钩子(TP框架中已经埋好标签,我们只要配置实现相应的函数就可以用了)

  1. app_init 应用初始化标签位,在think\App.php的initCommon函数中Hook::listen(‘app_init’);没有接收参数。

  2. app_begin应用开始标签位,在think\App.php的run函数中,在加载路由和请求信息后执行。会接收一个参数,存储的是本次请求的调度信息。

  3. module_init 模块初始化标签位,在think\App.php的module函数中,在加载请求控制器之前执行,接收一个参数,存储请求信息。

  4. action_init 控制器开始标签位,在think\App.php的module函数中,在加载完控制器后,使用反射请求控制器之前执行。接收一个参数,是一个数组,第一个元素是请求控制器实例对象,第二个函数时要执行的控制器函数名。

  5. view_fileter 视图输出过滤标签位,在think\View.php的fetch函数中,接收一个参数,视图字符串

  6. app_end 应用结束标签为,在think\App.php中run函数中,Hook::listen(‘app_end’);

  7. log_write 日志write方法标签位,在调用Log::wirte记录日志之前执行。接收一个参数,要写入的日志信息。

  8. response_end 响应结束标签为。在think\Response.php的send函数中,在响应客户端请求之后执行。

3. 钩子函数的注册和监听都依赖于think\Hook.php

4. 系统只带的钩子函数,我们可以在application\tags.php中注册,也可以使用Hook::add()来添加。

> 1. 官方文档数tags.php会自动加载,但是经测试我下载的tp5不会自动加载tags.php文件,所以就手动在think\start.php文件的App::run()->send();函数之前写了一行代码用于,注册tags文件中的钩子实现。代码为"php    // 加载Hook    Hook::import(require APP_PATH . '/tags.php');"> 2. 也可以使用Hook::add和Hook::listen来添加自己的钩子函数。Hook::listen()相当于是标签位,Hook::add()则相当于是对标签位相应的实现。所以要确保Hook::add()在Hoo::listen之前执行,不然就没什么用处了。

5. 钩子函数的绑定。

钩子函数既可以单独绑定一个类,也可以绑定类中的一个方法,或者直接绑定一个匿名函数。当绑定到一个类时,如果类中有run函数,那就直接执行run函数,如果没有run函数,而有一个与钩子名一样的函数则会执行该函数。(注意:钩子函数是驼峰式命名,并且钩子函数名的优先级大于run函数的优先级)

以上是“tp5框架中的hook机制是什么”这篇文章的所有内容,感谢各位的阅读!希望分享的内容对大家有帮助,更多相关知识,欢迎关注编程网精选频道!

--结束END--

本文标题: tp5框架中的hook机制是什么

本文链接: https://www.lsjlt.com/news/276026.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • tp5框架中的hook机制是什么
    这篇文章主要介绍tp5框架中的hook机制是什么,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!1. 官方解释行为(Behavior)是ThinkPHP扩展机制中比较关键的一项扩展,行为既可以独立调用,也可以绑定到某个...
    99+
    2023-06-15
  • pytorch中的hook机制是什么
    本篇内容介绍了“pytorch中的hook机制是什么”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!1、hook背景Hook被成为钩子机制,这...
    99+
    2023-06-29
  • Node.js中Nestjs框架的模块机制是什么
    这篇文章主要介绍“Node.js中Nestjs框架的模块机制是什么”的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇“Node.js中Nestjs框架的模块机制是什么”文...
    99+
    2022-10-19
  • Android中的HOOK技术是什么
    目录1. 什么是 Hook2. Hook的应用场景3. Hook的技术方式或框架4. Hook的一般步骤和技巧实战1. 什么是 Hook Hook 英文翻译过来就是「钩子」的意思,那...
    99+
    2023-02-17
    Android HOOK技术 Android HOOK框架
  • Vue3中的Hook特性是什么
    这篇文章主要讲解了“Vue3中的Hook特性是什么”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“Vue3中的Hook特性是什么”吧!Hook 的概念Hook...
    99+
    2022-10-19
  • react中hook的概念是什么
    本文小编为大家详细介绍“react中hook的概念是什么”,内容详细,步骤清晰,细节处理妥当,希望这篇“react中hook的概念是什么”文章能帮助大家解决疑惑,下面跟着小编的思路慢慢深入,一起来学习新知识...
    99+
    2022-10-19
  • php中rpc框架是什么
    这篇文章主要介绍php中rpc框架是什么,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!什么是RPC框架?通常我们调用一个php中的方法,比如这样一个函数方法: localAdd(10, 20),localAdd方法的...
    99+
    2023-06-15
  • Python中什么是Django框架
    这篇文章主要介绍“Python中什么是Django框架”,在日常操作中,相信很多人在Python中什么是Django框架问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”Python中什么是Django框架”的疑...
    99+
    2023-06-01
  • Spring框架中的并发控制机制有哪些?
    Spring框架是Java应用程序开发中非常常用的框架之一。在现代应用程序中,多线程和并发控制是必不可少的。在本文中,我们将探讨Spring框架中的并发控制机制。 Synchronized关键字 Synchronized关键字是Java...
    99+
    2023-07-20
    并发 spring 日志
  • php中QPM框架指的是什么
    这篇文章将为大家详细讲解有关php中QPM框架指的是什么,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。php有什么用php是一个嵌套的缩写名称,是英文超级文本预处理语言,它的语法混合了C、Java、Per...
    99+
    2023-06-14
  • php中Yaf框架指的是什么
    这篇文章给大家分享的是有关php中Yaf框架指的是什么的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。php有什么特点1、执行速度快。2、具有很好的开放性和可扩展性。3、PHP支持多种主流与非主流的数据库。4、面向...
    99+
    2023-06-14
  • html5框架指的是什么
    这篇文章主要介绍“html5框架指的是什么”的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇“html5框架指的是什么”文章能帮助大家解决问题。 ...
    99+
    2022-10-19
  • HTML框架指的是什么
    今天给大家介绍一下HTML框架指的是什么。文章的内容小编觉得不错,现在给大家分享一下,觉得有需要的朋友可以了解一下,希望对大家有所帮助,下面跟着小编的思路一起来阅读吧。   通过使用框架,你可以在同一个浏...
    99+
    2022-10-19
  • css框架指的是什么
    这篇文章将为大家详细讲解有关css框架指的是什么,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。CSS框架是预先准备好的软件框架,是一系列CSS文件的集合体,包含了基本的元素重置,页面排版、网格布局、表单样...
    99+
    2023-06-15
  • vue框架是干什么的
    vue框架是一套构建web用户界面的渐进式框架,能够让基于网页的前端应用程序开发起来更加方便,可以简单写单个页面,也可以写一个大的前端系统,使用vue框架上手速度快、功能强大,且提供了非常好用的脚手架vue-cli。...
    99+
    2022-10-17
  • react指的是什么框架
    本文将为大家详细介绍“react指的是什么框架”,内容步骤清晰详细,细节处理妥当,而小编每天都会更新不同的知识点,希望这篇“react指的是什么框架”能够给你意想不到的收获,请大家跟着小编的思路慢慢深入,具体内容如下,一起去收获新知识吧。r...
    99+
    2023-06-06
  • Python中hook的实现原理是什么
    在Python中,hook(钩子)是一种机制,允许开发者在特定事件(例如函数调用、异常发生等)发生时插入自定义的代码进行处理。实现原...
    99+
    2023-09-26
    Python
  • React中常用的两个Hook是什么
    这篇文章给大家分享的是有关React中常用的两个Hook是什么的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。先介绍一下什么是hookHook是React 16.8新增的特性,专门...
    99+
    2022-10-19
  • javascript中常用框架是什么
    这篇文章将为大家详细讲解有关javascript中常用框架是什么,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。JavaScript可以做什么1.可以使网页具有交互性,例如响应用户点击,给用户提供更好的体验...
    99+
    2023-06-14
  • PHP接口和Spring框架中的重定向机制有什么不同?
    随着互联网技术的不断发展,各种编程语言和框架被广泛应用于Web开发领域。在Web应用程序中,重定向机制是非常常见的一种技术,它可以帮助我们实现页面跳转和数据传输的功能。本文将探讨PHP接口和Spring框架中的重定向机制的异同点。 一、PH...
    99+
    2023-06-18
    接口 重定向 spring
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作