使用PDO的一些ORM?

10

我正在寻找一款良好的ORM(例如Active Record),它使用PHP扩展PDO作为基础。有什么建议吗?

7个回答

12

我的看法是:一定要使用Doctrine。 - dcousineau
我也更喜欢Doctrine,但我想避免这个线程被打上“宗教战争”的标签 :) - Zed
Definitely Doctrine;特别是考虑到Propel未来可能不会得到积极开发:http://groups.google.com/group/propel-development/msg/829895b081ec7873?pli=1 - Pascal MARTIN

2
我没有使用过Doctrine或Propel。Propel看起来简单明了,非常不错(可能需要尝试一下)... Doctrine似乎不仅仅是一个ActiveRecord ORM,它还有更多的功能。我是phpactiverecord的忠实粉丝(http://www.phpactiverecord.org/)。它很简单,易于理解,并为MVC架构而构建。我以前使用过CodeIgniter的ActiveRecord,这个与之类似:全部都是PHP,非常容易设置新连接,我尤其喜欢动态查找器,基本上可以让您将“WHERE”字段放入函数中,而不必提供关联数组。Propel也可能有这个功能,例如:
$book = Book::find_by_title('War and Peace'); 

对比:

$book = Book:find('all', array('conditions' => "title = 'War and Peace'"));

2
毫无疑问选择Doctrine。

2
如果您正在使用PHP 5.3,现在有一个PHP实现的ActiveRecord可用(link)。它也可以在github上观看或分叉。我在github上检查了源代码,它确实使用PDO作为执行查询的核心。

1
另一个选择是phpDataMapper,它是DataMapper模式的轻量级实现。

0

0

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接