use func_get_args instead of array as parameter