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_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