PHP 反射类和实例化类的区别

$fronted_instance = new \ReflectionClass($fronted_name);   

new class()是一个类对象封装后的展现,你不需要知道类的私有成员和方法,以及内部作用机制,便可以直接通过类开放的成员方法和属性来使用它。

而 new ReflectionClass()反射类则是一个类对象开封后的展现,它将类的内部属性,包括公开或私有的属性/方法,是否是静态,接口、继承、命名空间信息,甚至注释等全部公开,都可以通过反射api进行访问。

由此可见反射类的强大之处。但通常使用反射在于编写业务更为复杂的底层逻辑。而对外的功能开发还是使用实例化类封装,也更安全便捷。

 联系我们

  • 邮箱:admin@admincms.top
  • 官方博客:blog.admincms.top
  • 官方微信公众号:huayuejishu
扫描二维码关注Joker.Liu微信公众号
TOP博客官方微信公众号二维码