Automattic\WooCommerce\Vendor\League\Container
ReflectionContainer::call()
Invoke a callable via the container.
Method of the class: ReflectionContainer{}
No Hooks.
Return
Mixed
.
Usage
$ReflectionContainer = new ReflectionContainer(); $ReflectionContainer->call( $callable, $args );
- $callable(callable) (required)
- -
- $args(array)
- -
Default: []
ReflectionContainer::call() ReflectionContainer::call code WC 9.7.1
public function call(callable $callable, array $args = []) { if (is_string($callable) && strpos($callable, '::') !== false) { $callable = explode('::', $callable); } if (is_array($callable)) { if (is_string($callable[0])) { $callable[0] = $this->getContainer()->get($callable[0]); } $reflection = new ReflectionMethod($callable[0], $callable[1]); if ($reflection->isStatic()) { $callable[0] = null; } return $reflection->invokeArgs($callable[0], $this->reflectArguments($reflection, $args)); } if (is_object($callable)) { $reflection = new ReflectionMethod($callable, '__invoke'); return $reflection->invokeArgs($callable, $this->reflectArguments($reflection, $args)); } $reflection = new ReflectionFunction(\Closure::fromCallable($callable)); return $reflection->invokeArgs($this->reflectArguments($reflection, $args)); }