Это должно помочь вам начать. Все остальное не требует пояснений, если вы прочитали документы (которые вам следует).
$array = array(
array(
'id' => '1',
'menu' => 'Oil',
'submenu' => 'editable',
'childmenu' => 'coco oil'
),
array(
'id' => '2',
'menu' => 'Oil',
'submenu' => 'editable',
'childmenu' => 'sunflower'
),
array(
'id' => '3',
'menu' => 'Oil2',
'submenu' => 'noneditable',
'childmenu' => 'deepa'
),
);
// CONTROLLER
$_data = array();
// $array will come from model result_array()
foreach ($array as $item) {
$_data[$item['menu']][$item['submenu']][] = $item['childmenu'];
}
// send $_data to view
// VIEW
foreach ($_data as $menu => $submenu) {
echo '<i>' . $menu . '</i><br>';
foreach ($submenu as $name => $childmenu) {
echo '<strong>' . $name . '</strong><br>';
foreach ($childmenu as $item) {
echo $item . '<br>';
}
}
}
По сути, я переставил массив, чтобы было удобнее работать. Таким образом, это предотвращает необходимость проверки определенных подменю в foreach позже в представлении.