2014-07-01 32 views
0

您好我在Zend的以下形式如何填充多陣列輸入字段的Zend的表單數據

<?php 
/** 
* Admin/modules/admin/forms/TransportRoute.php 
* @uses TransportRoute Admission Form 
*/ 

class Admin_Form_TransportRoute extends Zend_Form 
{ 
    public function init() 
    { 
     $this->setMethod('post'); 

     $stopageDetailsForm = new Zend_Form_SubForm(); 
     $stopageDetailsForm->setElementsBelongTo('transport_route_stopage'); 

     $sd_stopage = $this->CreateElement('text','stopage') 
           ->setAttribs(array('placeholder'=>'Stopage Name', 'mendatory'=>'true')) 
           ->setRequired(true) 
           ->addFilter(new Zend_Filter_StringTrim()) 
           ->setDecorators(array(array('ViewHelper'))) 
           ->setIsArray(true) 
           ->addValidators(array(
             array('NotEmpty', true, array('messages' => 'Please enter Stopage Name')), 
             array('stringLength',true,array(1, 6, 'messages'=> 'Stopage Name must be 2 to 40 characters long.')) 
     )); 

     $sd_stopage_fee = $this->CreateElement('text','stopage_fee') 
           ->setAttribs(array('placeholder'=>'Route Fee', 'mendatory'=>'true')) 
           ->setRequired(true) 
           ->addFilter(new Zend_Filter_StringTrim()) 
           ->setDecorators(array(array('ViewHelper'))) 
           ->setIsArray(true) 
           ->addValidators(array(
             array('NotEmpty', true, array('messages' => 'Please enter Stopage Fee')), 
     )); 
     $stopageDetailsForm->addElements (array (
       $sd_stopage, 
       $sd_stopage_fee, 
     )); 
     $this->addSubForm($stopageDetailsForm, 'transport_route_stopage'); 

       //all sub form end here 
     $id = $this->CreateElement('hidden','id') 
          ->setDecorators(array(array('ViewHelper'))); 
     $this->addElement($id); 
     $this->setDecorators(
       array(
         'PrepareElements', 
         array('viewScript')) 
     ); 
    } 
} 

這絕對是工作正常,當我呈現如下這種形式:

<div class="row-fluid stopage_block"> 
      <div class="span5"> 
       <?php echo $stopageDetail->stopage;?> 
      </div> 
      <div class="span4"> 
       <?php echo $stopageDetail->stopage_fee;?> 
      </div> 
</div> 

但在添加記錄的時候,我創建了「stopage_block」類的div的克隆並將它們保存在數據庫中。現在我所關心的是如何通過使用通過克隆的克隆插入的foreach循環來填充所有值。

我有以下陣列

array('stopage' => 'India','stopage_fee' => 5000); 
array('stopage' => 'US','stopage_fee' => 50000); 
array('stopage' => 'Nepal','stopage_fee' => 2000); 

如何通過使用任何環或別的東西來填充回到我目前的形式將這些值。

謝謝。

回答