/** * * @param Symfony\Component\Form\FormBuilder $formBuilder * @param string $elementId * * @return array */ private function generateElementId(FormBuilder $formBuilder, $elementId) { $nameBase = $formBuilder->getName(); $elementId = $nameBase . "_" . $elementId; foreach (new FormBuilderIterator($formBuilder) as $name => $formBuilder) { $nameClean = substr($name, strlen($nameBase) + 1); if (strpos($elementId, $name) === 0) { if (strlen($name) == strlen($elementId)) { return array($nameClean); } return array_merge(array($nameClean), $this->generateElementId($formBuilder, substr($elementId, strlen($name) + 1))); } } }
public function testGetName() { $this->element->name('test'); $this->assertSame('test', $this->element->getName()); }