PHP PEAR DB类在网站建设中的作用体现
在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时一定要安装在DedeAMPZWebRootDefault目录下,否则在引入DB.php时会报Failedopening required ‘DB.php’错误,即找不到DB类(could not find pear db library),因为DedeAMPZ可能对相关的目录做了限制。
PHP PEAR DB类使用示例
- < ?
- 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 ) CHARACTER
SET gbk COLLATE gbk_chinese_ci NOT NULL ,".- "`sex` INT( 1 ) NOT NULL ,".
- "PRIMARY KEY ( `id` )".
- ") ENGINE = MYISAM CHARACTER SET gbk
COLLATE gbk_chinese_ci";- $result = $dbCon->query($sql);
- if (DB::isError($result)) {
- die ($result->getMessage());
- }
- $sql = "insert into leapsoul(id,name,
age,birthday,sex) values(1,leapsoul,1,
2009-05-13,1),(2,leapsoul,1,2009-05
-13,1),(3,leapsoul,1,2009-05-13,1)";- $result = $dbCon->query($sql);
- if (DB::isError($result)) {
- die ($result->getMessage());
- }
- $dbCon->setFetchMode(DB_FETCHMODE_ASSOC);
- $sql = "select * from leapsoul";
- $result = $dbCon->query($sql);
- if (DB::isError($result)) {
- die ($result->getMessage());
- }
- for($i=0;$i<$result->numRows();$i++)
- {
- $info = &$result->fetchRow();
- echo "name:".$info[name];
- echo "birthday:".$info[birthday]."<br>";
- }
- $result->free();
- $dbCon->disconnect();
- }
以上就是PHP PEAR DB类的详细使用方法介绍。
文章网址:http://www.phprm.com/frame/php1003939.html
随意转载^^但请附上教程地址。