ReflectionMethod::invoke

Invoke

&reftitle.description; public `mixed` `ReflectionMethod::invoke` ``object``null```object` `mixed` `args`

Invokes a reflected method.

&reftitle.parameters;

`object`

- The object to invoke the method on. For static methods, pass `null` to this parameter.

`args`

- Zero or more parameters to be passed to the method. It accepts a variable number of parameters which are passed to the method.

&reftitle.returnvalues;

Returns the method result.

&reftitle.errors;

A `ReflectionException` if the `object` parameter does not contain an instance of the class that this method was declared in.

A `ReflectionException` if the method invocation failed.

&reftitle.examples;

### `ReflectionMethod::invoke` example

    <?php
    class HelloWorld {

        public function sayHelloTo($name) {
            return 'Hello ' . $name;
        }

    }

    $reflectionMethod = new ReflectionMethod('HelloWorld', 'sayHelloTo');
    echo $reflectionMethod->invoke(new HelloWorld(), 'Mike');
    ?>

&example.outputs;

    Hello Mike

&reftitle.notes;

`ReflectionMethod::invoke` cannot be used when reference parameters are expected. `ReflectionMethod::invokeArgs` has to be used instead (passing references in the argument list).

&reftitle.seealso;

- `ReflectionMethod::invokeArgs`
- __invoke()
- `call_user_func`