PHP « вызов самого себя

Есть метод showItem в неком классе. Внутри этого метода использую команду $this->showItem() для вызова самого себя. Кто знает, возможно ли заменить имя метода на обобщенную команду, что-то типа $this->thismethod().

1 ответов


Возможно такое пройдет, точнее код просто не тестирован, если что подправите сами уже.

public function showItem($args){
   call_user_func_array(array($this, __FUNCTION__), func_get_args());
}

call_user_func_array - вызовет функцию __FUNCTION__ - это мажик переменная, обьекта $this и передаст все параметры в него func_get_args()

рефы -

http://php.net/manual/en/function.call-user-func-array.php

http://php.net/manual/en/function.func-get-args.php

http://php.net/manual/en/language.constants.predefined.php

Может просто

$call_method = __METHOD__;
$this->$call_method();