<转>利用反射API查看类所在文件
前言
有些情况下, 不大清楚类究竟是在那个路径下, 只知道类名的情况下, 怎么查看类所在的路径呢?
在没有IDE智能提示的情况下还是有点麻烦的。这一次我们用的是PHP的反射API去搞定的。
PHP 反射API
什么是反射API
PHP5 的反射API是用来分析代码的一系列内置类, 可以获取类信息、方法参数信息、函数信息、属性等信息, 非常强大。
自然小小的获取类所在的文件名自然也不是神马大事了。
具体代码
$obj = new ReflectionClass('TimeCostStrategy');
$filename = $obj->getFileName();
echo $filename;
短短的三行代码就可以搞定了;
分析
这次的目的其实就是查找一个类, 看看这个类究竟是哪里定义的。
那我们要用的肯定是类信息获取的反射API了: ReflectionClass
而ReflectionClass::getFileName则可以获取定义类的文件名了, 也就是我们想要的玩意。
需要注意的是,这段代码需要放在可以正常加在Order类的代码中才可以, 否者
有可能会因为找不到这个类而抛异常。
反射API总览
- Reflection:
反射类 - ReflectionClass:
类信息和工具 - ReflectionMethod:
类方法信息和工具 - ReflectionParameter:
方法参数信息 - ReflectionProperty:
类属性信息 - ReflectionFunction:
函数信息和工具 - ReflectionException:
错误类 - ReflectionExtension:
PHP扩展信息
posted on 2016-03-05 13:20 hahahahahai12 阅读(159) 评论(0) 收藏 举报
浙公网安备 33010602011771号