如何从单个表创建 codeigniter 动态菜单
Posted
技术标签:
【中文标题】如何从单个表创建 codeigniter 动态菜单【英文标题】:How to create codeigniter dynamic menu from single table 【发布时间】:2018-10-07 20:06:36 【问题描述】:我有一张这样的桌子 表名:菜单
Id menu submenu childmenu
1. Oil. Edible. Coconut oil
2. Oil. Edible. Sunflowe oil
3. Oil. Non edible. Deepa oil
4. Oil non edible. Coconut oil
我的预期输出是
Oil
Edible
Coconut oil
Sunflower oil
Non edible
Deepa oil
Coconut oil
如何创建这样的菜单。谢谢你的回答
【问题讨论】:
如何创建这样的菜单。通过构建结构并在其上循环。 我需要在我的视图页面中循环播放。我不知道如何创建这样的模型和视图 我投票结束这个问题,因为用户没有努力解决他/她的问题。 【参考方案1】:这应该可以帮助您入门。如果您已经阅读过文档(您应该阅读过),那么剩下的内容就很容易解释了。
$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 中的特定子菜单。
【讨论】:
以上是关于如何从单个表创建 codeigniter 动态菜单的主要内容,如果未能解决你的问题,请参考以下文章
如何在 codeigniter 中将 class="active" 设置为导航菜单?
使用连接(codeigniter)从单个字段中检索和打印逗号分隔符后的值