Use variable function instead of call_user_func_array()