2013-01-22 2 views
0

I가 5 개 클래스 A의 하위 폼 및zf1 : 검색 하위 폼

내가의 첫 번째 하위 폼 뷰에 표시 할 클래스 B의 또 다른 하위 폼을 포함하는 폼 클래스 A하지만 그들을 검색하는 방법을 모르겠습니다.

클래스 A의 5 개 하위 양식이 포함 된 다른 하위 양식을 만들어야합니까? 패턴을 기반으로 하위 양식을 가져 오는 방법이 있습니까?

는이 같은 컨트롤러에서 양식을 instanting 해요 : 내가 zf1을 사용하고

for($i = 0; $i < 6; $i++) 
    { 
     $form = new ContractLink_Form_ContractOMFOverrideAppendix(); 
     $form->setElementsBelongTo('override' . $i); 
     if(isset($overrides[$i])) { 
      $form->populate($overrides[$i]); 
     } 

     $formSuper->addSubForm($form, 'OMFOverrideAppendixForm' . $i); 
    } 

.

답변

2

으로는

당신은 하위 폼의 클래스를 확인하기 위해 instanceof PHP operator을 사용할 수, IRC 말했다.

$subForms = $form->getSubForms(); 
foreach ($subForms as $subForm) { 
    if ($subForm instanceof A) { 
     // stuff to do for 'A' type of subform 
    } 
}