我是 CodeIgniter 的新手。
我为比萨表和配料表创建了模型。表由附加的 Pizza_Ingredients 表连接(它的多对多关系)。
我的模型:
<?php
class Pizza extends DataMapper {
var $table = 'Pizza';
var $has_many =
array(
'ingredients' =>
array(
'class' => 'ingredients',
'join_table' => 'pizza_ingredients'
)
);
}
class Ingredients extends DataMapper {
var $table = 'Ingredients';
var $has_many =
array(
'pizza' =>
array(
'class' => 'pizza',
'join_table' => 'pizza_ingredients'
)
);
}
?>
当我使用该代码获取数据时:
$pm = new Pizza();
$pm->include_related('ingredients');
$array = $pm->get();
我正在获取具有重复 Pizza 值的数组(它看起来只是 sql 查询结果)。
margherita | cheese
vegetariana | vegetable 1
vegetariana | vegetable 2
我不能像这样在数组的“foreach”中简单地生成 html 表。
我想得到对象,它的结构如下:
margherita:
- cheese
vegetariana:
- vegetable 1
- vegetable 2
这使我可以在“披萨循环”内与其他 foreach 循环(带配料)一起制作 foreach 循环(带比萨饼)。
我必须用 PHP 写这个,或者 CodeIgniter/DataMapper 可以为我做更多的事情吗?
有什么建议吗?