2013-01-22 46 views
0

我有一个包含5子表单类A和类B.的另一个子形式ZF1:检索子表单

我想在视图中示出的第一子窗体一个形式A类,但我不知道如何检索它们。

我应该创建另一个包含A类5个子表单的子表单吗? 有什么办法根据模式获取子表单吗?

我instanting在这样的控制器形式:

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); 
    } 

我使用的是ZF1。

回答

2

由于IRC上说,

您可以使用instanceof PHP operator检查类子窗体的。

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