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

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


当前回答

试试红豆,它要求:

没有配置 没有数据库(一切都是动态创建的) 没有模型 等。

它甚至为您执行所有的锁定和事务,并在后台监视性能。(见鬼!它甚至做垃圾收集....)最棒的是……你不必写一首……代码行…天哪,ORM层救了我!

其他回答

一个非常好的简单ORM是MyActiveRecord。MyActiveRecord文档。我经常使用它,可以说它非常简单,经过了很好的测试。

巴西ORM: http://www.hufersil.com.br/lumine。它适用于PHP 5.2+。在我看来,它是葡萄牙人和巴西人的最佳选择,因为它有易于理解的文档和大量的示例可供下载。

我目前正在开发phpDataMapper,这是一个ORM,它的语法很简单,就像Ruby的Datamapper项目一样。虽然它仍处于早期开发阶段,但效果非常好。

如果您正在寻找ORM(如Hibernate),则应该查看PMO。

它可以很容易地集成到SOA体系结构中(只需要开发一个webservice类)。

让我们尝试一下dORM,它是PHP 5的对象关系映射器。它支持所有类型的关系(1对1)、(1对多)、(多对多)和数据类型。它完全不引人注目:不需要代码生成或类扩展。在我看来,它比任何ORM都要优越,包括Doctrine和Propel。然而,它仍处于测试阶段,并可能在未来几个月发生重大变化。http://www.getdorm.com

它的学习曲线也非常小。你将使用的三个主要方法是:

<?php 
$object = $dorm->getClassName('id_here');
$dorm->save($object);
$dorm->delete($object);