2010-10-04 149 views
0

添加輸入一個複雜的形式陣列我使用一個foreach獲得會員級別的信息:使用foreach循環

foreach ($aMemLevels as $aMemLevel) { 
    // Add 'mlevels' array to $aForm['inputs'] array 
    } 

我有舉辦大型陣列的主要形式變量:$可保存格式

形式是建立這樣的:

$aForm = array(
    'form_attrs' => array(
    'name'  => 'menu_access', 
    'action' => BX_DOL_URL_ROOT.'m/memberships/main_menu', 
    'method' => 'post', 
    'onsubmit' => 'saveMenuItem(this); return false;' 
    ), 

    'inputs' => array(
     'mlevels' => array(
      'type' => 'checkbox', 
      'caption' => 'Check to enable', 
      'name' => '1', 
      'value' => '1', 
     ), 
    ), 
); 

我試圖找到一種方法來添加一個「mlevels」陣列到 $aForm['inputs']陣列,爲$ aMemLevels每個迭代。

+0

你確定這是工作? 「'mlevels [$ aMemLevel ['ID']''應該會產生語法錯誤(注意」ID「部分) – Lekensteyn 2010-10-04 15:24:15

+0

不,這只是爲了演示我添加了註釋 – tmartin314 2010-10-04 15:25:22

+0

您的示例代碼有點不連貫 – Hannes 2010-10-04 15:26:27

回答

1

這裏擴展示例

foreach($aMemLevels as $level){ 
    $mlevel = array(): 
    $mlevel['mlevels'] = array(
      'type' => $level['type'], 
      'caption' => $level['caption'], 
      'name' => $level['name'], 
      'value' => $level['value'], 
     ); 
    $aForm ['inputs'][] = $mlevel; 

} 
+0

感謝此方法。 – tmartin314 2010-10-04 17:01:12

+0

如果$的水平看起來完全像我在我的例子中所做的那樣,你可以像manos那樣做,只是做一個$ mlevel ['mlevels'] = $ level; – ITroubs 2010-10-04 17:12:39

2

您的意思是這樣的?

foreach ($aMemLevels as $aMemLevel) { 
    // Add 'mlevels' array to $aForm['inputs'] array 
    $aForm['inputs'][]=$aMemLevel; 
}