随着拥有更成熟 OO 语法的 PHP 5 的发布,PHP 越来越多地受到越来越大的机构的关注,对于 PHP 来说,提供更加一致的和可访问的数据访问 API 变得越来越重要。
PHP 与流行的 开放源代码 关系数据库管理系统(RDBMS)MySQL 之间总是很有默契。这对拍档的成功很大程度上是由于它们免费可用,而且进入的门槛也比较低,这两种产品的合作使它们各自都取得了广受推崇的地位。
很多 PHP 应用程序开发人员都习惯于 PHP-MySQL 这对组合,以致 PHP 对其他数据库的支持常常模仿 MySQL 客户机库 API。然而,并不是所有的数据库客户机 API 都是一样的,也不是所有的数据库都提供相同的特性。虽然存在模仿,但不同的 PHP 数据库扩展都有它们各自的怪僻和不同之处,所以从一种数据库迁移到另一种数据库时会有一些困难。虽然这不是创建 PDO 的直接原因,但是在设计过程中还是有一定影响的。
如果您是带着想结合使用 PHP 和 DB2 的目的阅读本文,那么您很可能属于以下类型中的一种:
您从一家小公司开始,在 MySQL(举个例子)上运行 PHP,由于业务增长,您需要 DB2 所提供的可伸缩性/可靠性/支持或其他特性。您希望移植代码,以使用 DB2,但由于 API 的变化,您需要编写或实现一个抽象层,以便在 DB2 上测试应用程序的同时可以继续在旧的数据库上运行。不仅如此,您还希望能有自己的选择,并保留支持其他 RDBMS 的可能性,因为您清楚,有些客户机可能已经和其他平台栓在一起了。
您用 PHP 在 MySQL之上构建了一个小型的部门应用程序(同样,这只是举个例子,我并不是要跟 MySQL 过不去)。事实证明这个应用程序本身很有用,现在已经在这个部门之外使用,并且闯入了 CIO/CTO 的法眼 —— 现在需要遵从托管的标准数据库。(是的,这是第一点的一个变种。) 在其他某些复杂的企业级应用程序的 后台,您已经有一个 DB2 实例;您希望利用 PHP 的快速应用程序开发和 原型设计来生成动态报告。
PHP 与流行的 开放源代码 关系数据库管理系统(RDBMS)MySQL 之间总是很有默契。这对拍档的成功很大程度上是由于它们免费可用,而且进入的门槛也比较低,这两种产品的合作使它们各自都取得了广受推崇的地位。
很多 PHP 应用程序开发人员都习惯于 PHP-MySQL 这对组合,以致 PHP 对其他数据库的支持常常模仿 MySQL 客户机库 API。然而,并不是所有的数据库客户机 API 都是一样的,也不是所有的数据库都提供相同的特性。虽然存在模仿,但不同的 PHP 数据库扩展都有它们各自的怪僻和不同之处,所以从一种数据库迁移到另一种数据库时会有一些困难。虽然这不是创建 PDO 的直接原因,但是在设计过程中还是有一定影响的。
如果您是带着想结合使用 PHP 和 DB2 的目的阅读本文,那么您很可能属于以下类型中的一种:
您从一家小公司开始,在 MySQL(举个例子)上运行 PHP,由于业务增长,您需要 DB2 所提供的可伸缩性/可靠性/支持或其他特性。您希望移植代码,以使用 DB2,但由于 API 的变化,您需要编写或实现一个抽象层,以便在 DB2 上测试应用程序的同时可以继续在旧的数据库上运行。不仅如此,您还希望能有自己的选择,并保留支持其他 RDBMS 的可能性,因为您清楚,有些客户机可能已经和其他平台栓在一起了。
您用 PHP 在 MySQL之上构建了一个小型的部门应用程序(同样,这只是举个例子,我并不是要跟 MySQL 过不去)。事实证明这个应用程序本身很有用,现在已经在这个部门之外使用,并且闯入了 CIO/CTO 的法眼 —— 现在需要遵从托管的标准数据库。(是的,这是第一点的一个变种。) 在其他某些复杂的企业级应用程序的 后台,您已经有一个 DB2 实例;您希望利用 PHP 的快速应用程序开发和 原型设计来生成动态报告。