*/ class ConfigRepository { /** * * @var array */ protected $links; public function __construct($links) { $this->links = $links; } /** * * @return array where keys are the resource'key and label the ressource label */ public function getLinksLabels() { $links = array(); foreach ($this->links as $definition) { $links[$definition['key']] = $this->normalizeLabel($definition['labels']); } return $links; } private function normalizeLabel($labels) { $normalizedLabels = array(); foreach ($labels as $labelDefinition) { $normalizedLabels[$labelDefinition['lang']] = $labelDefinition['label']; } return $normalizedLabels; } }