Pear DB 新手入门指南教程第1/3页_PHP教程
-
原创
-
2016-07-21 15:48:26
777浏览
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 连接,断开数据库
// 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 执行数据库
// 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的数据
http://www.bkjia.com/PHPjc/319757.htmlwww.bkjia.comtruehttp://www.bkjia.com/PHPjc/319757.htmlTechArticle1. 简介这是一部指导我们如何使用Pear DB扩展。Pear DB,提供这样一系列的类: n 数据库抽象 n 高级错误处理机制 n 以及其它 2. 下载、安装...
声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn核实处理。