我有这个:
function callMe()
{
// return $this->callMe();
return $this->__FUNCTION__();
}
这个不起作用:
Fatal error: Call to undefined method Classss::__FUNCTION__()
但是,如果我不想复制该方法的名称会怎样?
答案 0 :(得分:1)
以下作品,但我建议不要这样做。
class Test {
public function f() {
echo "called";
$fn_name = __FUNCTION__;
$this->$fn_name();
// Equally valid:
// $this->{__FUNCTION__}();
}
}
答案 1 :(得分:1)
以这种方式尝试:
function callMe( ){
return call_user_func(
array( $this, __METHOD__ )
//(optional) , $argument1, $argument2, ....
);
}
答案 2 :(得分:1)
像this这样的apporach也可以。
<?php
callMe(0);
function callMe($count)
{
$count++;
echo $count . " ";
if($count > 10){
return;
}
call_user_func(__FUNCTION__, $count);
}
?>