• 技术文章 >后端开发 >PHP问题

    php中怎么调用类的私有方法

    VV2021-09-01 16:01:44原创119

    php中调用类的私有方法的具体步骤:1、通过类名进行反射;2、通过反射类进行实例化;3、通过方法名获取指定方法;4、设置可访问性;5、执行方法。

    本文操作环境:windows10系统、php 7.1、thinkpad t480电脑。

    在php中我们应该如何去调用类的私有方法呢?我们知道php中是有完整的反射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);
    ?>

    以上就是全部的实现代码了,小伙伴们可以在本地执行下上述代码。

    如果大家对PHP课程非常感兴趣,或者想要提高自己的编程能力,欢迎大家参加php中文网17期php培训班。

    以上就是php中怎么调用类的私有方法的详细内容,更多请关注php中文网其它相关文章!

    声明:本文原创发布php中文网,转载请注明出处,感谢您的尊重!如有疑问,请联系admin@php.cn处理
    专题推荐:php 私有方法
    上一篇:如何解决destoon php错误问题 下一篇:php中怎么进行日期类型转换
    线上培训班

    相关文章推荐

    • php子类重载父类私有方法的疑问• PHP类中私有方法的内部引用,php类私有引用_PHP教程• 子类为什么可以访问父类的私有方法• php如何在内部引用私有方法

    全部评论我要评论

  • 取消发布评论发送
  • 1/1

    PHP中文网