zoukankan      html  css  js  c++  java
  • 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();
    If the copyright belongs to the longfei, please indicate the source!!!
  • 相关阅读:
    三种等待时间的区别
    多种测试的测试方法
    测试面试题总结
    自动化过程中定位不到元素时使用等待方法
    账号登录测试,多表查询
    TP商城添加购物车自动化测试
    二十四个球
    老鼠喝药
    购物车测试点
    前后端分页
  • 原文地址:https://www.cnblogs.com/longfeiPHP/p/5542337.html
Copyright © 2011-2022 走看看