php 5 具有完整的反射 api,添加了对类、接口、函数、方法和扩展进行反向工程的能力。 此外,反射 api 提供了方法来取出函数、类和方法中的文档注释。通过使用反射api可以分析其他的类、接口、方法、属性、函数和扩展。下面举例展示php自身类 reflection 的定义:
Reflection::export(new ReflectionClass('Reflection'));
打印结果如下:
Class [ <internal:Reflection> class Reflection ] { - Constants [0] { } - Static properties [0] { } - Static methods [2] { Method [ <internal:Reflection> static public method getModifierNames ] { - Parameters [1] { Parameter #0 [$modifiers ] } } Method [ <internal:Reflection> static public method export ] { - Parameters [2] { Parameter #0 [ Reflector $reflector ] Parameter #1 [ $return ] } } } - Properties [0] { } - Methods [0] { } }
从打印结果可以看出 export 是 Reflection 类的一个public 的静态方法,提供两个参数,一个必须提供的 reflector类型 ,另一个是可选的,bool类型。不只是export,反射API还有很多,通过这些API我们还可以查询类的元数据,动态的调用类的静态方法,反射还能被用来创建自动稳定编写系统。反射API定义了大量is和has类型的函数,它们可以用来在代码中执行条件判断。比如通过isUserDefined()来判断已经加载的类中哪些是用户定义的。
[PHP房产程序|BBWPS]功能介绍 1、5种信息类别发布:出租、求租、出售、求购、楼盘信息,支持会员发布信息审核; 2、灵活的信息参数设置; 3、充足的信息字段; 4、简单易用的发布/编辑功能,支持配图上传; 5、灵活的信息管理功能; 6、信息输出伪静态,方便搜索引擎抓取数据; 7、支持RSS输出; 8、内置数据高速缓冲技术,可灵活设置缓冲功能是否启动及过期时间; 9、支持 Google 地图
(未完待续)









