如何在类中定义函数,方法为空, 方法会改变调用类(作为c#中的委托) 以下错误代码为:
class myclass{
public $num1=0;
public function func($a,$b);
}
$c=new myclass();
$c->func=function($a,$b){
return $a+$b;
}
$c->func(4,8);// is error
答案 0 :(得分:1)
您可以这样做:
class myclass {
public $num1=0;
public function func($a,$b,$fn) {
return $fn($a,$b); // return anonymous function
}
}
$c = new myclass();
$c->func(2,5,function($a,$b) { // declaring anonymous function with $a and $b parameters
echo $a + $b; // result 7
});