user functions can be called with the function call _ user _ function _ ex it requires a hash value for the function table you want to access a pointer to an object if you want to call a method the function name return value number of arguments argument array and a flag indicating whether you want to perform zval separation 