private function flattElements(ElementContainer $container) { $items = array(); foreach ($container->getElements() as $attr) { if ($attr instanceof ElementContainer) { $items = array_merge($items, $this->flattElements($attr)); } else { $items[] = $attr; } } return $items; }