> 백엔드 개발 > PHP 튜토리얼 > 终究啥是钩子,他的作用是啥

终究啥是钩子,他的作用是啥

WBOY
풀어 주다: 2016-06-13 12:20:15
원래의
989명이 탐색했습니다.

到底啥是钩子,他的作用是啥
大家知道几乎所有的php视频讲座,包括书籍,根本没有提到钩子的概念,但是发现实际做项目的时候却经常用到,所以有时感觉教学的实践的脱节一直是中国人最大的毛病,没用的讲的和滔滔江水,连延不断,而用到的只字不提。
牢骚过后还要正视严峻的现实,那么问题来了,到底啥是钩子呢

------解决思路----------------------
简单的说,钩子就是程序。这些程序可以在特定的时间被调用。
你既然用CI框架,那么应该知道,在框架初始化的过程中,有一些特殊的时间点,比如
(1)、框架初始化之前的时间点。
(2)、控制器初始化之前的时间点
(3)、控制器运行之后的时间点
当然还有其他的时间点。
在每一个时间点,你都可以埋下一些钩子(可以是一段程序,或者一个函数)。框架中都会有一个专门处理钩子的类库(比如CI中的hooks.php),这个Hook类就会在程序运行的特定点检查是不是有特定的钩子,如果有钩子,就执行这个钩子。

说了这么多,可能还是有点抽象。打个比方:
你下班回家的整个流程看做是框架的执行流程,正常情况下,你下班直接走回家就可以。如果你老妈给你打电话说,如果你路过邮局,刚好有咱家的快递,带回家,这个过程,就比较类似钩子(检查钩子,如果有则执行之)。

如果你做过一些前端的工作,这个钩子就恰似“事件驱动”的模式。

관련 라벨:
원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿