`
tiandirensoon
  • 浏览: 597148 次
文章分类
社区版块
存档分类
最新评论

php反射类 ReflectionClass

 
阅读更多
什么是php反射类,顾名思义,可以理解为一个类的映射。
举个例子:

class fuc {//定义一个类
static function ec() {
echo'我是一个类';
}
}
$class=new ReflectionClass('fuc'); //建立 fuc这个类的反射类


echo $class; //输出这反射类

Class [ <user>class A ] { @@ F:\phpweb\myPHP\test.php 23-30 - Constants [0] { } - Static properties [0] { } - Static methods [0] { } - Properties [0] { } - Methods [1] { Method [ <user ctor="">public method __construct ] { @@ F:\phpweb\myPHP\test.php 26 - 29 } } }</user></user>

$fuc=$class->newInstance();//相当于实例化 fuc 类
$fuc->ec();//执行 fuc 里的方法ec
/*最后输出:我是一个类*/

其中还有一些更高级的用法

$ec=$class->getmethod('ec');//获取fuc 类中的ec方法
$fuc=$class->newInstance();//实例化
$ec->invoke($fuc);//执行ec 方法


上面的过程很熟悉吧。其实和调用对象的方法类似
只不过这里是反着来的,方法在前,对象在后

举例


分享到:
评论

相关推荐

    php反射类ReflectionClass用法分析

    主要介绍了php反射类ReflectionClass用法,结合实例形式较为详细的分析了php反射类的概念、功能与具体使用方法,需要的朋友可以参考下

    PHP反射类ReflectionClass和ReflectionObject的使用方法

    PHP反射类ReflectionClass和ReflectionObject

    PHP的反射类ReflectionClass、ReflectionMethod使用实例

    主要介绍了PHP的反射类ReflectionClass、ReflectionMethod使用实例,本文同时介绍了反射是什么、反射可以做哪些事情,并给出一个具体例子,是一篇不错的入门文章,需要的朋友可以参考下

    php反射api.pdf

    PHP ReflectionClass Api

    PHP特性(网友根据ctfshow整理)1

    3.== 弱类型与路径问题 5.三目运算符的理解+变量覆盖 8.and与&&的区别+反射类ReflectionClass的使用 3.== 弱类型与路径问题

    PHP类的反射用法实例

    本文实例讲述了PHP类的反射用法。分享给大家供大家参考。具体实现方法如下: 该例实现对于每个频道获取相应的类来执行相应的操作。具体如下: 复制代码 代码如下:foreach($this-&gt;chs as $ch) {  $className = $this...

    PHP实现懒加载的方法

    本文实例讲述了PHP实现懒加载的方法。分享给大家供大家参考。...通过PHP的反射类 ReflectionClass 可以直接获得对应类的一个反射类: test.php文件如下: &lt;?php class test{ public function showName(){

    Laravel框架源码解析之反射的使用详解

    本文实例讲述了Laravel框架源码解析之反射的使用。分享给大家供大家参考,具体如下: 前言 PHP的反射类与实例化对象作用相反,实例化是调用封装类中...这里列举下PHP反射类常用的方法 方法名 注释 ReflectionCl

    PHP反射学习入门示例

    本文实例讲述了PHP反射。分享给大家供大家参考,具体如下: 今天开始学习php 的反射,许多人可能还没有听说过反射这个概念,简单点说反射的就是让你拥有剖析类、函数的能力。 有的同学可能会问我剖析类有什么用,我...

    PHP基于反射获取一个类中所有的方法

    本文实例讲述了PHP基于反射获取一个类中所有的方法。分享给大家供大家参考,具体如下: 当我们使用一个类时既没有源码也没有文档时(尤其是php扩展提供的类,比如mysqli,Redis类),我们该怎么知道这个类中提供了...

    浅谈PHP的反射API

    ReflectionClass类报告了一个类的有关信息 输出结果为:name say __set __get 也可以用class函数,获取对象属性的关联数组的信息 通过class()函数获取类的信息 打印结果: 通过这个反射API,可以做hook实现插件...

    PHP 反射(Reflection)使用实例

    主要介绍了PHP 反射(Reflection)使用实例,本文讲解了ReflectionClass、ReflectionExtension、 ReflectionFunction、ReflectionMethod、ReflectionObject、ReflectionParameter等类的使用实例,需要的朋友可以参考下

    filereflection:使用缺少的 ReflectionFile 类补充 PHP 反射 API

    这个库通过缺少的 ReflectionFile 类补充了 PHP 。 其他一些库已经可以做到这一点,但是这个库实现了我能找到的其他实现中缺少的一个重要功能:根据解析本地类型名称。 界面非常简单: ReflectionFile { ...

    PHP获取类私有属性的3种方法

    今天在推上看到一条获取PHP类私有属性的推文,感觉很有意思: 顺着推文联想,还有其他方式吗?经过自己的测试及网上答案,总结出三种方法: 1. 反射 反射可以获取类的详细信息,要获取私有属性的值,只需将对应...

    thinkPHP基于反射实现钩子的方法分析

    PHP系统自带的 ReflectionClass、ReflectionMethod 类,可以反射用户自定义类的中属性,方法的权限和参数等信息,通过这些信息可以准确的控制方法的执行。 ReflectionClass: 主要用的方法: hasMethod(string) 是否...

    反射:Doctrine Reflection项目是各个Doctrine项目使用的简单库,它在PHP附带的反射API之上添加了一些附加功能。 它使您可以静态获取有关类,方法和属性的反射信息。

    :warning: 该软件包已被放弃,请考虑迁移到其他方法,例如roave/better-reflection 。 仍对教义有用的功能已移至doctrine/persistence :warning: ... 它使您可以静态获取有关类,方法和属性的反射信息。 更多资源:

Global site tag (gtag.js) - Google Analytics