一些使用 PDO 的 ORM?
Posted
技术标签:
【中文标题】一些使用 PDO 的 ORM?【英文标题】:Some ORM using PDO? 【发布时间】:2009-08-28 11:36:26 【问题描述】:我正在寻找一个使用 php 扩展 PDO 作为基础的良好 ORM(即 Active Record)。有什么建议吗?
【问题讨论】:
【参考方案1】:Doctrine 或Propel。
【讨论】:
我的 2 美分:一路教义。 我也更喜欢 Doctrine,但我会从“religious-war”标签中保存这个帖子:) 绝对学说;特别是考虑到未来可能不会积极开发 Propel:groups.google.com/group/propel-development/msg/…【参考方案2】:一定要遵守教义。
【讨论】:
【参考方案3】:如果您使用的是 PHP 5.3,现在可以使用 PHP 实现的 ActiveRecord (link)。它在github 上,以防您想观看或分叉它。 我检查了 github 上的源代码,它确实使用 PDO 作为其核心来执行查询。
【讨论】:
【参考方案4】:我没有使用过 Doctrine 或 Propel。 Propel 看起来很简单而且非常好(可能必须试一试).. Doctrine 似乎不仅仅是 ActiveRecord ORM。我是 phpactiverecord (http://www.phpactiverecord.org/) 的忠实粉丝。它很简单,很有意义,并且是为 MVC 架构构建的。我以前用过CodeIgniter的ActiveRecord,类似:都是php,很容易建立新的连接,我特别喜欢Dynamic finders,基本上可以让你把“WHERE”的字段放在函数中,而不必给一个关联数组。 Propel 也可能有这个,例如:
$book = Book::find_by_title('War and Peace');
对比:
$book = Book:find('all', array('conditions' => "title = 'War and Peace'"));
【讨论】:
【参考方案5】:另一个选项是phpDataMapper,它是DataMapper 模式的轻量级实现。
【讨论】:
【参考方案6】: Doctrine (可选配 Symfony) - http://symfony.com/ 推进(可选配 Symfony) - - http://propelorm.org/ Zend_db(可选用zend)-http://zend.com/ CakePHP 使用众所周知的设计模式,如 MVC 和 ORM - - http://cakephp.org/还有更多的 ORM http://en.wikipedia.org/wiki/List_of_object-relational_mapping_software
【讨论】:
【参考方案7】:我认为将 PDO 用于 php 的最好和最简单的 ORM 之一是 Redbeanphp :http://www.redbeanphp.com/
【讨论】:
以上是关于一些使用 PDO 的 ORM?的主要内容,如果未能解决你的问题,请参考以下文章