精英盒子 -> 程序设计 -> 正在设计全新的PHP函数重载 [打印本页]

jybox 2012-11-14 19:19

正在设计全新的PHP函数重载

秒杀Abreto(https://github.com/Abreto/php-func-overload/blob/master/php-func-overload.php)的几条街~~

特征:
* 提供代码时,支持函数名方式、支持lambda函数。绝不使用坑爹的字符串方式提供代码

* 提供更多可用类型,包括:int、float、string、bool、array、resoure、自定义类名
以及很多伪类型:.intval(包括int和float)、.any(任何类型)、.nullval(NULL值)、.notnull(非NULL值)、.lambda(匿名函数)
用类名加一个加号的形式(如lpAction+),可以表示匹配这个类的所有派生类

* 提供调试功能,可查看某个函数有多少个重载版本

* 支持重载类成员函数
要引入函数重载支持,需要继承自lpOverloadClass,如果已经继承了其他类,需要添加一小段代码以实现类成员函数重载

简单的示例(已完成大部分):
https://gist.github.com/4071611







Powered by phpwind v8.7 Code ©2003-2011 phpwind
Time 0.040633 second(s),query:4 Gzip enabled