Pear DB 新手入门指南教程第1/3页
Pear DB 新手入门指南教程第1/3页
发布时间:2016-12-29 来源:查字典编辑
摘要:1.简介这是一部指导我们如何使用PearDB扩展。PearDB,提供这样一系列的类:n数据库抽象n高级错误处理机制n以及其它2.下载、安装P...

1. 简介这是一部指导我们如何使用Pear DB扩展。Pear DB,提供这样一系列的类:

n 数据库抽象

n 高级错误处理机制

n 以及其它

2. 下载、安装Pear

由于现在Pear项目仍处于紧锣密鼓的开发之中,所以得到它的最好办法就是从CVS获得(Pear DB发行包已经跟随PHP4.0.6以后版本捆绑发布)。所以,我们只需要把Pear的根目录放到php.ini配置文件include_path中。也可以通过这样设置:_set('include_path', '/pear_base_dir').

以下是strp by step示例:

存放Pear的目录:

# cd /usr/local/lib用“phpfi“口令登录:

# cvs -d :pserver:cvsread@cvs.php.net:/repository login用以下命令得到所有的pear文件,同时也可以用来更新已经下载的文件。其他的参数有:"today", "last month",等。我推荐用"last week"参数,因为一般bugs的提交和修改都是每周一次。

# cvs -d :pserver:cvsread@cvs.php.net:/repository export -D "last week" php4/pear编辑php.ini文件加上下面一段在include_path处: /usr/local/lib/php4/pear 如果没有修改的权限,可以通过这条语句在代码中实现: ini_set('include_path', 'path_to_pear');

获得PHP CVS的完全文档

注意Pear DB必需PHP版本4.0.4以上,而在Pear中的一些其他包如:XML Parser of the pear installer script需要PHP4.0.5以上版本。

3.

使用

Pear DB

3.1 连接,断开数据库

<?php

// The pear base directory must be in your include_path

require_once'DB.php';

$user='foo';

$pass='bar';

$host='localhost';

$db_name='clients_db';

// Data Source Name: This is the universal connection string

$dsn="mysql://$user:$pass@$host/$db_name";

// DB::connect will return a Pear DB object on success

// or a Pear DB Error object on error

// You can also set to TRUE the second param

// if you want a persistent connection:

// $db = DB::connect($dsn, true);

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

// With DB::isError you can differentiate between an error or

// a valid connection.

if(DB::isError($db)){

die($db->getMessage());

}

....

// You can disconnect from the database with:

$db->disconnect();

?>

数据源(上例中的$dsn 参数)有以下允许的格式:(从Pear/DB.php的parseDSN方法复制而来)

*phptype: Database backend used in PHP (mysql, odbc etc.)

*dbsyntax: Database used with regards to SQL syntax etc.

*protocol: Communication protocol to use (tcp, unix etc.)

*hostspec: Host specification (hostname[:port])

*database: Database to use on the DBMS server

*username: User name for login

*password: Password for login

*

* The format of the supplied DSN is in its fullest form:

*

*phptype(dbsyntax)://username:password@protocol+hostspec/database

*

* Most variations are allowed:

*

*phptype://username:password@protocol+hostspec:110//usr/db_file.db

*phptype://username:password@hostspec/database_name

*phptype://username:password@hostspec

*phptype://username@hostspec

*phptype://hostspec/database

*phptype://hostspec

*phptype(dbsyntax)

*phptype

现在支持的数据库有 (在 phptype DSN 部分):

mysql-> MySQL

pgsql-> PostgreSQL

ibase-> InterBase

msql-> Mini SQL

mssql-> Microsoft SQL Server

oci8-> Oracle 7/8/8i

odbc-> ODBC (Open Database Connectivity)

sybase -> SyBase

ifx-> Informix

fbsql-> FrontBase

注意并不是所有数据库特征都支持,可以从根目录>/DB/STATUS 得到详细的清单。

3.2 执行数据库

<?php

// Once you have a valid DB object

...

$sql="select * from clients";

// If the query is a "SELECT", $db->query will return

// a DB Result object on success.

// Else it simply will return a DB_OK

// On failure it will return a DB Error object.

$result=$db->query($sql);

// Always check that $result is not an error

if(DB::isError($result)){

die($result->getMessage());

}

....

?>

3.3 获得select的数据

当前1/3页123下一页阅读全文

推荐文章
猜你喜欢
附近的人在看
推荐阅读
拓展阅读
相关阅读
网友关注
最新php教程学习
热门php教程学习
编程开发子分类