YamlDefinitionLoader
in package
YAML Definition Loader for DI Container
Loads service definitions from YAML configuration files and converts them to PHP-DI definition format. Supports environment-specific configuration files and multiple definition types.
Table of Contents
Properties
- $_configPath : string
- $_definitions : array<string|int, mixed>
- $_environment : string|null
Methods
- __construct() : mixed
- Constructor
- getDefinitions() : array<string|int, mixed>
- Get loaded definitions
- load() : array<string|int, mixed>
- Load service definitions from YAML file(s)
- convertToPhpDiDefinitions() : array<string|int, mixed>
- Convert YAML service definitions to PHP-DI format
- createAliasDefinition() : mixed
- Create alias definition (reference to another service)
- createAutowireDefinition() : mixed
- Create autowire definition
- createCreateDefinition() : mixed
- Create create definition
- createFactoryDefinition() : mixed
- Create factory definition
- loadFile() : array<string|int, mixed>
- Load and parse a YAML file
- resolveParameters() : array<string|int, mixed>
- Resolve parameter references
Properties
$_configPath
private
string
$_configPath
$_definitions
private
array<string|int, mixed>
$_definitions
= []
$_environment
private
string|null
$_environment
Methods
__construct()
Constructor
public
__construct(string $configPath[, string|null $environment = null ]) : mixed
Parameters
- $configPath : string
-
Path to the config directory
- $environment : string|null = null
-
Environment name (testing, production, etc.)
getDefinitions()
Get loaded definitions
public
getDefinitions() : array<string|int, mixed>
Return values
array<string|int, mixed>load()
Load service definitions from YAML file(s)
public
load() : array<string|int, mixed>
Loads base services.yaml and optionally environment-specific overrides.
Tags
Return values
array<string|int, mixed> —PHP-DI compatible definitions array
convertToPhpDiDefinitions()
Convert YAML service definitions to PHP-DI format
private
convertToPhpDiDefinitions(array<string|int, mixed> $services) : array<string|int, mixed>
Parameters
- $services : array<string|int, mixed>
-
Service definitions from YAML
Return values
array<string|int, mixed> —PHP-DI compatible definitions
createAliasDefinition()
Create alias definition (reference to another service)
private
createAliasDefinition(array<string|int, mixed> $config) : mixed
Parameters
- $config : array<string|int, mixed>
createAutowireDefinition()
Create autowire definition
private
createAutowireDefinition(string $serviceName, array<string|int, mixed> $config) : mixed
Parameters
- $serviceName : string
- $config : array<string|int, mixed>
createCreateDefinition()
Create create definition
private
createCreateDefinition(string $serviceName, array<string|int, mixed> $config) : mixed
Parameters
- $serviceName : string
- $config : array<string|int, mixed>
createFactoryDefinition()
Create factory definition
private
createFactoryDefinition(string $serviceName, array<string|int, mixed> $config) : mixed
Parameters
- $serviceName : string
- $config : array<string|int, mixed>
loadFile()
Load and parse a YAML file
private
loadFile(string $file) : array<string|int, mixed>
Parameters
- $file : string
-
Path to YAML file
Tags
Return values
array<string|int, mixed> —Parsed YAML data
resolveParameters()
Resolve parameter references
private
resolveParameters(array<string|int, mixed> $parameters) : array<string|int, mixed>
Converts string parameters starting with @ to service references
Parameters
- $parameters : array<string|int, mixed>