在PHP中使用变量作为函数名称

时间:2011-12-11 18:45:36

标签: php function variables

  

可能重复:
  Use a variable to define a PHP function

有没有办法将变量用作函数名。

例如我有一个变量

$varibaleA;

我想创建一个函数,即

function $variableA() {
}

所以稍后可以在脚本中调用此函数。有谁知道这是否可以做到?

由于

3 个答案:

答案 0 :(得分:26)

如果不使用eval()include()亲自动手,则无法声明具有可变但任意名称的函数。

根据您要做的事情,您需要在该变量中存储anonymous function(如果您不是,请使用create_function()在PHP 5.3 +):

$variableA = function() {
    // Do stuff
};

你仍然可以像对待任何variable function那样召唤它,如下所示:

$variableA();

答案 1 :(得分:14)

$x = 'file_get_contents';
$html = $x('http://google.com');

在功能上等同于

$html = file_get_contents('http://google.com');

它们被称为variable functions,并且通常应该避免,因为它们与变量变量相距太远。

答案 2 :(得分:3)

你可以这样做:

$foo = function() {
    //..
};

然后:

$foo(); 

适用于PHP 5.3 +