PHP有好的对象关系映射库吗?

我知道PDO/ADO,但它们似乎只提供了数据库供应商之间差异的抽象,而不是域模型和关系模型之间的实际映射。我正在寻找一个PHP库,功能类似于Hibernate为Java和NHibernate为。net所做的方式。


当前回答

我们使用的另一个很棒的开源PHP ORM是PHPSmartDb。它是稳定的,使您的代码更加安全和干净。其中的数据库功能是我在PHP 5.3中使用过的最简单的功能。

其他回答

如果你喜欢冒险,可以试试Repose。与Outlet一样,它也模仿Hibernate。

它仍然处于开发的早期阶段,但到目前为止,域模型的唯一限制是类没有标记为final,属性没有标记为private。一旦我进入了PHP >= 5.3的领域,我将尝试实现对私有属性的支持。

PdoMap试试。维基百科称其灵感来自Hibernate。因为我从未使用过Hibernate,所以我无法判断:),但根据我的经验,我想说的是,它是一种好的、快速的ORM,易于实现,学习曲线不像其他ORM那么陡峭。

检查出口ORM。它比Propel和Doctrine更简单,它的工作原理类似于Hibernate,只是它有更多的PHP感觉。

Doctrine2试试。它可能是最强大的PHP ORM工具。我把它和教义一分开提,因为它是完全不同的软件。它是从头重写的,仍然处于测试阶段,但现在已经可以使用了。

这是一个非常复杂的ORM,但设计得很好。第一条教义中的很多魔法都消失了。它提供了一个完整的解决方案,您可以在Doctrine2的基础上编写自己的ORM,也可以只使用其中的一个层。

我刚从Kohana开始,它似乎最接近Ruby on Rails,而不像Propel那样调用多个配置文件的复杂性。