日期:2011-12-29  浏览次数:20466 次

  在PHP网站开发中,由于其支持各种数据库引擎,如Mysql,Mssql,Pgsql,sqlite等,并对各种数据库系统都提供了不同的函数作为接口,给PHP网站开发者带来很多便利,但同时也带来了平台移植性的问题,随着底层数据库的改变,PHP代码也必须改变。对于这个问题,有各种解决方法,如使用PHP ADODB类,PHP PEAR DB类或者自行编写PHP DB类,将各种数据库的函数操作聚合在一起等,今天和大家分享如何安装使用PHP PEAR DB类,以实现不同数据库的访问功能。

准备工作

  1、在使用PHP PEAR DB类访问数据库之前,需要安装PHP PEAR,然后通过PEAR来下载安装DB类,即。

    pear install db

  2、根据需要安装相关数据库,比如Mysql,Mssql,Pgsql,Sqlite等,同时在PHP.INI中找到Dynamic Extensions,引入对应数据的DLL文件,并重启Apache。

  注意:由于我使用的是DedeAMPZ,在安装PHP PEAR时一定要安装在DedeAMPZ\WebRoot\Default目录下,否则在引入DB.php时会报Failedopening required ‘DB.php’错误,即找不到DB类(could not find pear db library),因为DedeAMPZ可能对相关的目录做了限制。

PHP PEAR DB类使用示例

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
<?
require_once("DB.php");

$userName = 'root';
$password = '123456';
$hostName = 'localhost';
$dbName = 'test';

$dsn = "mysql://$userName:$password@$hostName/$dbName";

$dbCon = DB::connect($dsn);

if (DB::isError($dbCon)) {
        die ($dbCon->getMessage());
}

$sql = "CREATE TABLE leapsoul (".
"`id` INT( 11 ) UNSIGNED NOT NULL ,".
"`name` VARCHAR( 30 ) CHARACTER SET gbk COLLATE gbk_chinese_ci NOT NULL ,".
"`age` INT( 2 ) NOT NULL ,".
"`birthday` VARCHAR( 30 ) CHA