获取包含其他对象数组的对象


Fetch object which contains array of other objects

我有扩展Item的Item类和Package类。Package类中唯一添加的字段是$components,我希望它是Item对象的数组。我是zend/学说的新手,我使用教程来学习它。

我能够毫无问题地学习如何从表中获取对象,但我真的不知道如何获取包含Item对象数组及其数量的Package对象。应该如何做到这一点?

物品类别:

class Item {
protected $item_id,
/* @ORM'Column(type="string") */
protected $name
/* @Column(type="decimal", precision=10, scale=2) */
protected $price
}

项目表:

item_id int,
name varchar(100),
price decimal(10,2)

包装类别:

Class Package extends Item
{
protected $ingredients; // This field should be an array of Item objects.
}

item_ingredient表(包含项目成分关系):

item_id int,
ingredient_id int,
quantity int

您需要设置实体类之间的关系。通过学说教程来设置实体之间的关系。

基本上,Package与Item具有多对一关系,并且只能通过适当的注释进行设置。