A factory that invokes a specified method on a class using reflection and the PSR-11 container.
Description
This factory MUST be used when service creation requires calling a non-constructor method, and supports both static and instance methods.
If the method is not public, a RuntimeException SHALL be thrown.
Arguments MAY be resolved from the container if passed as service identifiers.
Interfaces
Defines a contract for service factories that rely on a PSR-11 container for instantiation.
Properties
Methods
Constructs the MethodFactory.
Resolves the class and invokes the configured method with arguments.
Constructs the MethodFactory.
public
__construct(
string
$class,
string
$method,
mixed
...$arguments) : mixed
Parameters
$class
:
string
Description
the class name or container service ID on which the method is called
$method
:
string
Description
the name of the method to invoke
$arguments
:
mixed
Description
Optional arguments to pass to the method.
Resolves the class and invokes the configured method with arguments.
public
__invoke(ContainerInterface
$container) : mixed
Description
Arguments MAY be resolved from the container if passed as string identifiers and found. Static methods are invoked without instantiating the class. If the method is not public, this method MUST throw a RuntimeException.
Parameters
$container
:
ContainerInterface
Description
The container used to resolve the class and arguments
Description
If the method does not exist
Return values
Description
The result of invoking the method