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等等扩展来连接MySQL、PostgreSQL、MS SQL Server、SQLite,同样的,我们必须借助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、ODBC和Firebird的驱动程序,更多的驱动程序尚在开发。
安装PDO[ ]
- windows平台
我的是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