for testing and deploying your application
for finding and fixing issues
for empowering human code reviews
<?php
namespace TomPHP\ConfigServiceProvider;
use ArrayIterator;
use IteratorAggregate;
final class ServiceConfig implements IteratorAggregate
{
/**
* @var ServiceDefinition[]
*/
private $config = [];
public function __construct(array $config)
foreach ($config as $key => $serviceConfig) {
$this->config[] = new ServiceDefinition($key, $serviceConfig);
}
* @return array
public function getKeys()
return array_map(
function (ServiceDefinition $definition) {
return $definition->getName();
},
$this->config
);
public function getIterator()
return new ArrayIterator($this->config);