PDO

来自站长百科
跳转至: 导航、​ 搜索

导航: 上一页 | ASP | PHP | JSP | HTML | CSS | XHTML | aJAX | Ruby | JAVA | XML | Python | ColdFusion

PDO是PHP5新加入的一个重大功能,因为在PHP 5以前的php4/php3都是一堆的数据库扩展来跟各个数据库的连接和处理,什么 php_mysql.dll、php_pgsql.dll、php_mssql.dll、php_sqlite.dll等等扩展来连接MySQLPostgreSQL、MS SQL ServerSQLite,同样的,我们必须借助ADOdb、PEAR::DB、PHPlib::DB之类的数据库抽象类来帮助我们,无比烦琐和低效.PHP6中将默认使用PDO连接数据库,所有非PDO扩展将会在PHP6被从扩展中移除。

PDO的目标[ ]

  • 提供一种轻型、清晰、方便的API
  • 统一各种不同RDBMS库的共有特性,但不排除更高级的特性。
  • 通过PHP脚本提供可选的较大程度的抽象/兼容性。

PDO的特点[ ]

  • 性能

PDO 从一开始就吸取了现有数据库扩展成功和失败的经验教训。因为PDO的代码是全新的,所以我们有机会重新开始设计性能,以利用PHP 5的最新特性、能力。PDO旨在将常见的数据库功能作为基础提供,同时提供对于RDBMS独特功能的方便访问。

  • 简单

PDO 旨在使您能够轻松使用数据库。API不会强行介入您的代码,同时会清楚地表明每个函数调用的过程。 运行时可扩展。PDO扩展是模块化的,使您能够在运行时为您的数据库后端加载驱动程序,而不必重新编译或重新安装整个PHP程序。例如,PDO_OCI扩展会替代PDO扩展实现Oracle数据库API。还有一些用于 MySQL、PostgreSQL、ODBCFirebird的驱动程序,更多的驱动程序尚在开发。

安装PDO[ ]

我的是PHP 5.2,已经自带有了php_pdo.dll的扩展,不过需要稍微设置一下才能使用。打开php配置文件php.ini ,找到下面这行:

extension_dir。这个就是我们扩展存在的目录,我的PHP 5扩展是在:C:\php5\ext,那么我就把这行改成:extension_dir = "C:/php5/ext"

然后再往php.ini下面找到:


  ;;;;;;;;;;;;;;;;;;;;;;
  ; Dynamic Extensions ;
  ;;;;;;;;;;;;;;;;;;;;;;

下面有一堆类似 ;extension=php_mbstring.dll 的东西,这里就是PHP扩展加载的配置了,我们再最后面添加上我们PDO的扩展:

extension=php_pdo.dll
extension=php_pdo_mysql.dll
extension=php_pdo_pgsql.dll
extension=php_pdo_sqlite.dll
extension=php_pdo_mssql.dll
extension=php_pdo_odbc.dll
extension=php_pdo_firebird.dll
;extension=php_pdo_oci8.dll 

然后重启我们的Web服务器就可以了,你可以使用phpinfo()来检测下是否安装成功了。

PDO使用指南[ ]

PDO drivers[ ]

PDO_DBLIB FreeTDS / Microsoft SQL Server / Sybase

PDO_FIREBIRD Firebird/Interbase 6

PDO_INFORMIX IBM Informix Dynamic Server

PDO_MYSQL MySQL 3.x/4.x

PDO_OCI Oracle Call Interface

PDO_ODBC ODBC v3 (IBM DB2, unixODBC and win32 ODBC)

PDO_PGSQL PostgreSQL

PDO_SQLITE SQLite 3 and SQLite 2

相关阅读[ ]

参考资料[ ]