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

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


当前回答

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

其他回答

MicroMVC有一个13 KB的ORM,它只依赖于一个8 KB的数据库类。它还将所有结果作为ORM对象本身返回,并使用后期静态绑定来避免将有关当前对象的表和元数据的信息嵌入到每个对象中。这导致了最便宜的ORM开销。

它适用于MySQL, PostgreSQL和SQLite。

我的朋友Kien和我对他在PHP 5.3之前编写的ORM的早期版本进行了改进。我们实际上已经将Ruby on Rails的活动记录移植到PHP。它仍然缺少一些我们想要的关键特性,比如事务,复合主键支持,更多的适配器(目前只有MySQL和SQLite 3可用)。但是,我们已经非常接近完成这些工作了。你可以看看带有PHP 5.3的PHP ActiveRecord。

让我们尝试一下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);

Sado是一个简单的PHP ORM包,易于使用,并提供视频教程

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