I have a large multidimensional array and I basically want to drop the first level of arrays and build an array the doesn’t have the numerical keys:
My current array:
Array
(
[0] => Array
(
[block_header14] => Array
(
[type] => block_header
=> Silver
[collapsable] => 1
[collapsed] =>
)
[section14] => Array
(
[type] => checkbox_set
[name] => purchasable_memberships14
=> Available Memberships
[values] => Array
(
[14] => Silver
[15] => Gold
)
[value] =>
)
)
[1] => Array
(
[block_header15] => Array
(
[type] => block_header
=> Gold
[collapsable] => 1
[collapsed] =>
)
[section15] => Array
(
[type] => checkbox_set
[name] => purchasable_memberships15
=> Available Memberships
[values] => Array
(
[14] => Silver
[15] => Gold
)
[value] =>
)
)
)
This what I want to end up with:
Array
(
[block_header14] => Array
(
[type] => block_header
=> Silver
[collapsable] => 1
[collapsed] =>
)
[section14] => Array
(
[type] => checkbox_set
[name] => purchasable_memberships14
=> Available Memberships
[values] => Array
(
[14] => Silver
[15] => Gold
)
[value] =>
)
[block_header15] => Array
(
[type] => block_header
=> Gold
[collapsable] => 1
[collapsed] =>
)
[section15] => Array
(
[type] => checkbox_set
[name] => purchasable_memberships15
=> Available Memberships
[values] => Array
(
[14] => Silver
[15] => Gold
)
[value] =>
)
)
Edit: I reworked the initial foreach and skipped the extra step: Sorry for the blurry question
foreach ($aMemLevels as $id =>$name) {
$aForm['inputs']['block_header'.$id] = array(
'type' => 'block_header',
'caption' => 'Available to ' . $name . ' Members',
'collapsable' => true,
'collapsed' => false
);
$aForm['inputs']['section'.$id] = array(
'type' => 'checkbox_set',
'name' => 'purchasable_memberships'.$id,
'values' => getMemberships(true),
'value' => $aValue,
);
}
1 Answer