有可能在运行时在php中为类变量赋值吗?

Zor*_*orb 5 php function-pointers

可以在运行时为一个类变量赋一个函数来执行吗?像C一样的"函数指针"

像这样的事情:(这不会起作用,因为总和超出A的范围,但这是我的意思)

 class A {
    public $function_name;
    public functon run($arg1,$arg2){
        $function_name($arg1,$arg2);
    }
}  

function sum($a,$b){
    echo $a+$b;
}

$a=new A();
$a->function_name='sum';

$a->run();     
Run Code Online (Sandbox Code Playgroud)

[编辑]我知道有"call_user_func",但我需要了解范围内的函数或使用公共类方法

Eri*_*ric 3

如果您使用 PHP >5.3.0,则可以使用匿名函数:

$sum = function($a, $b) {
    return $a+$b;
}

$a->function_name = $sum;
Run Code Online (Sandbox Code Playgroud)