function_exists
принимает имя функции в виде строки и не имеет понятия иерархии классов.
Если $function
- имя функции, просто используйте этот код:
if(function_exists($function)) {
// Call $function().
}
Однако, глядя на ваш код, вы увидите, что вы хотите определить, существует ли метод объекта.
method_exists
принимает два параметра: 1: объект для проверки, 2: имя метода для обнаружения.
if(method_exists($this->module, $function)) {
$this->module->$function($vars);
}