Fast Forward Container API

AggregateServiceProvider implements ServiceProviderInterface

Aggregates multiple service providers into a single provider.

This class MUST be used to compose a unified list of factories and extensions from several ServiceProviderInterface implementations.

Factories and extensions returned by this class are merged in registration order.

Table of Contents

Interfaces

ServiceProviderInterface

Methods

__construct()  : mixed
Constructs the AggregateServiceProvider.
getExtensions()  : array<string, callable>
Retrieves all service extensions from aggregated providers.
getFactories()  : array<string, callable>
Retrieves all service factories from aggregated providers.

Methods

__construct()

Constructs the AggregateServiceProvider.

public __construct(ServiceProviderInterface ...$serviceProviders) : mixed
Parameters
$serviceProviders : ServiceProviderInterface

One or more service providers to aggregate.

getExtensions()

Retrieves all service extensions from aggregated providers.

public getExtensions() : array<string, callable>

This method merges extensions from each provider. If multiple extensions exist for the same service ID, they are composed in the order they are added using nested closures.

Tags
throws
RuntimeException

if any extension is not callable

Return values
array<string, callable>

an associative array of service extensions

getFactories()

Retrieves all service factories from aggregated providers.

public getFactories() : array<string, callable>

This method merges the factories from each service provider into a single array. The factory for this class itself is added under the key of its class name.

Return values
array<string, callable>

an associative array of service factories


        
On this page

Search results