zoukankan      html  css  js  c++  java
  • php通过反射方法调用私有方法

    PHP 5 具有完整的反射 API,添加了对类、接口、函数、方法和扩展进行反向工程的能力。

    下面我们演示一下如何通过反射,来调用执行一个类中的私有方法:

    <?php
    
    //MyClass这个类中包含了一个名为myFun的私有方法
    class MyClass {
        
        private $tmp = 'hello';
        
        private function myFun()
        {
            echo $this->tmp . ' ' . 'world!';
        }
    }
    
    //通过类名MyClass进行反射
    $ref_class = new ReflectionClass('MyClass');
    
    //通过反射类进行实例化
    $instance  = $ref_class->newInstance();
    
    //通过方法名myFun获取指定方法
    $method = $ref_class->getmethod('myFun');
    
    //设置可访问性
    $method->setAccessible(true);
    
    //执行方法
    $method->invoke($instance);
    ?>
    

      转自http://www.sunbloger.com/article/515.html

  • 相关阅读:
    COJ 1691:前缀和
    COJ 1692:模拟
    POJ 3415:后缀数组+单调栈优化
    python拓展知识
    git总结
    好的文章及博客收集
    python爬虫总结
    ajax与java后台交互
    Java多线程与并发库
    Django框架创建
  • 原文地址:https://www.cnblogs.com/llkbk/p/7374080.html
Copyright © 2011-2022 走看看