OOP组合 - 将类作为单独的实例和循环对象处理

时间:2012-10-21 20:51:54

标签: php oop

我在PHP中有一个对象组成的对象,如:

// Settlement (DB Fields: id, name)
id = 1, name = 'Meep', jobs = array()
-
// Job (DB Fields: id, action, settlement_id)
id = 1, action = 'build'

所以我可以执行以下操作:$settlement->getJobs()并返回jobs

的数组

在处理这些工作时,我也需要知道解决方案。所以我对它应该如何存在感到困惑。

Job是否应包含Settlement,然后执行以下操作:$job->getSettlement()或者是否存在无限循环的嵌套/合成?

或者当我从数据库中获取实例来处理作业时,我是否应首先获得包含要处理的Settlement的{​​{1}}对象,以便它与以前一样?

在我的数据库中,Job通过外键Job附加到Settlement,因此在我的settlement_id实体中,我不确定是否应该只存储Job {1}}或整个settlement_id,但随后是嵌套/合成循环。

1 个答案:

答案 0 :(得分:1)

节点互相链接是完全可以接受的。您可以拥有Settlement的{​​{1}}实例,其Job位于Job对象内。