这篇文章主要为大家展示了“php中如何调用类的私有方法”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“php中如何调用类的私有方法”这篇文章吧。
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中如何调用类的私有方法”这篇文章的所有内容,感谢各位的阅读!相信大家都有了一定的了解,希望分享的内容对大家有所帮助,如果还想学习更多知识,欢迎关注亿速云行业资讯频道!
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。