php钩子技术
通過對鉤子技術的理解,下面把自己對鉤子技術的總結如下:"鉤子就是在調用php核心功能代碼的同時可以在不修改核心代碼的同時,更改核心代碼的行為";具體模擬實現如下
/*** php 鉤子技術* 理解:php鉤子技術就是再不更新核心代碼的同時改變核心代碼的行為**/ /*** 核心類,該類為某框架的核心類,在使用過程中不可以修改,但是還要修改該類的行為,則使用鉤子技術,例子如下**/ class Core{public static function coreMethod(){Hook::exec('action1');echo 'core code<br />';Hook::exec('action2');} } /*** 鉤子實現類**/ class Hook{public static function exec($fun,$class=""){if($class==""){//沒有設置哪個類去修改核心代碼的行為,那么默認執行defaultClass$m = new defaultClass();}else{$m = new $class; }if($fun=="action1"){$m->action1(); }elseif($fun=="action2"){$m->action2(); }} } /*** 外部類修改核心代碼行為*/ class defaultClass{public function action1(){echo 'this is action1111<br />'; }public function action2(){echo 'this is action2222<br />'; } } //調用核心代碼 Core::coreMethod();?
轉載于:https://www.cnblogs.com/longfeiPHP/p/5542337.html
總結
- 上一篇: python3实现阿里云DDNS域名动态
- 下一篇: remix使用_使用Remix展平合同和