动态创建功能

时间:2011-02-23 00:06:49

标签: php function

我为我创建的所有网站都有一个加载程序类。

我用它来装载资产文件夹。

例如,我调用load::js('jsname');

加载jsname.js文件

/资产/ JS

我的问题是,

是否可以创建任意函数,因此我可以创建一个名为

的新文件夹

/资产/随机

然后我可以调用load::random('randomname');而无需实际创建random函数?

1 个答案:

答案 0 :(得分:4)

参见__call() and __callStatic()魔术方法。

示例:

class Load {
    public static function __callStatic($name, $arguments) {
        return "/assets/{$name}/{$arguments[0]}";
    }
}

调用

Load::random("randomname");

将返回字符串

"/assets/random/randomname"

__callStatic()可从php 5.3获得,__call()来自php 5。