在PHP中使用PDO时,ORM如何工作?

在PHP中使用PDO时,ORM如何工作?

问题描述:

我听说PDO可以做一些ORM。坚持使用它还是一个好主意,还是应该考虑使用PDO执行ORM的一些替代方案?在PHP中使用PDO时,ORM如何工作?

总之,我想要做的事情:我想自动将表格字段映射到实例变量。 Getters和Setter是手动创建的。不过,我也可以考虑将关联数组作为ivar,然后将记录集分配给该数组。获取者/设置者然后只需使用适当的键访问该数组。但我想知道PDO如何在这里帮助让事情变得更容易?

旁边艾哈迈德提出的建议,你也可以考虑教义或PHP的活动记录的实现:

学说:http://www.doctrine-project.org/

活性记录:

我通常与推进或活性记录工作(如CakePHP的的一部分)。活动记录支持您的关联数组目标。

对于Propel,您可以通过使所有(必需)类扩展某个超级类来达到相同目的。这是在数据库模式中定义的,然后生成到所有的ORM类中。在你的超级类中,你可以让构造函数接受关联数组...所以,如果这是你主要目标使用活动记录或实现活动记录的PHP框架。

+0

哦 - 虽然张贴我的回复,艾哈迈德的答案被接受.. – 2009-12-24 10:15:45

+0

因此phpactiverecord内部使用关联数组,并只是将记录集(结果集)分配给该数组?他们将会很有趣,他们如何将所有这些映射到getters/setters。偏题:如果我认为没有更多答案,我倾向于接受答案。比忘记接受任何答案更好:-)我认为如果答案已被接受,这并不重要。人们仍然应该提供答案,如果他们认为这可以进一步帮助。在这种情况下,我发现你的答案更有帮助,所以我改变了接受。谢谢! – openfrog 2009-12-24 10:25:03