我正在尝试将子类别与其各自的父类别相匹配。现在我只是在视图的主要类别(书籍、衣服等)中进行硬编码,并具有获取所有子类别的功能,然后在视图中我可以创建一个 while 循环以将每个子类别与其主要类别匹配。
我已经设法将我想要的数据放入一个数组中,现在看起来像这样:
array
1 =>
array
1 => string 'Medicine'
2 => string 'Fairy tales'
3 => string 'Novels'
2 =>
array
44 => string 'Men's Clothing'
45 => string 'Men's Accessories'
49 => string 'Women's Swimwear'
50 => string 'Boys'
51 => string 'Girls'
3 =>
array
52 => string 'Perfume Sprays'
53 => string 'Roll ons'
54 => string 'Deodorants'
64 => string 'Miscellaneous'
其中1、2、3是主要类别ID,里面的数组对应subcat_id => subcat_name。
我在我的模型中通过以下方式获得了这个数组:
function getsub()
{
$this->db->select('sub_id,sub_name,cat_id');
$q = $this->db->get('subcategories');
$subcats = array();
foreach($q->result() as $row)
{
$subcats[$row->cat_id][$row->sub_id] = $row->sub_name;
}
return $subcats;
}
然后在我看来,在我拥有的任何类别下,我都会创建一个 while 循环来显示与该 cat_id 匹配的所有子类别:
<ul class="dropdown-menu">
<?php while($subcats['cat_id'] == 1)?>
<?php{?>
<li><a href="main/sub_prod/<?php echo $subcats['sub_id'];?>">
<?php echo $subcats['sub_name'];?></a></li>
<?php}?>
</ul>
但是我在创建每个列表项的行上出现错误,说'未定义的索引:'subcat_name'。该列表项中的 subcat_id 也是如此。有人可以告诉我有什么问题吗?谢谢