php - 迄今为止最好的 PHP DAL(数据抽象层)

标签 php database database-abstraction

到目前为止,在我们可以善意重复使用的任何开源项目下开发的最好的 PHP DAL(数据抽象层)是什么?

我发现很难为我的应用程序选择一个充分支持对大多数常见数据库系统(MySQL、PostgreSQL、MSSQL、Oracle 等)的抽象的 DAL,并且是:

  1. 经过广泛测试,
  2. 具有良好的界面(可读的方法名称,良好的参数传递策略),
  3. 快,
  4. 轻量级,
  5. 提供缓存(例如与 Memcache 集成或支持良好的缓存机制),
  6. 开源许可证,
  7. 至少应该有 MySQL/MySQLi(非基于 PDO)的适配器

需要考虑的一些库:

请不要考虑:

  • PDO
  • 所有 ORM(不过,Doctrine 似乎除了 ORM 之外还有一个单独的 DAL)

最佳答案

如果您可以使用 PHP 5.3,我强烈推荐 Doctrine DAL ,它建立在 PDO 之上,因此您可以获得相同的性能和出色的 API。

更新:如果Doctrine不好,可以试试MDB2 .它具有适用于大多数流行 RDBMS 的驱动程序、强大的 API、出色的文档和庞大的用户群:

  • MySQL
  • MySQLi(仅限 PHP5)
  • PostgreSQL
  • 甲骨文
  • 前台
  • Interbase/Firebird(仅限 PHP5)
  • MSSQL
  • SQLite

关于php - 迄今为止最好的 PHP DAL(数据抽象层),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7807851/

相关文章:

php - PDO - 动态绑定(bind)参数 - 值为 0 奇怪的结果

php - 找不到 Pear DB 类

php - mysqli 或 PDO - 优缺点是什么?

php - 从两个不同的表中获取 MySQL 值到一个数组中?

php - 谁能向我解释一下 max_input_nesting_level 的用途以及嵌套深度是多少?

php - Aptana 拼写检查

c# - 是什么导致了这个 MySql.Data.MySqlClient.MySqlException? C#

mysql - 极其基本的 SQL 误解

database - SQL Server 2008 问题上的全文搜索实现