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);
    ?>

  • 相关阅读:
    img[src*="same"]{}
    a[href$=".pdf"]解释
    ::selection{}
    a[href^=""]的解释
    who are you?
    天下武功唯快不破
    登录一下好吗??
    后台登录
    实验吧—简单的登录题
    hdu 1010
  • 原文地址:https://www.cnblogs.com/php-rearch/p/6159478.html
Copyright © 2011-2022 走看看