[ 永远的UNIX::UNIX技术资料的宝库 ]

首页 > 编程技术 > Php > 正文
PHP4手册:函数库及函数(十) dbm 类资料库函式库
http://netleader.126.com 星空浪子 (2001-04-18 11:26:25)

--------------------------------------------------------------------------------
 dbm 类资料库函式库 
--------------------------------------------------------------------------------
 


本函式库共有 10 个函式
dbm 为柏克莱大学所发展的档案型资料库。欲使用本函式可能需要先安装相关的 DBM 函数馆,当然在 BSD 系列的作业系统中已经装好的就不用自行动手了。
dbm 在资料存取没有很复杂的栏位,它只有单纯的键/值 (key/value) 的栏位。

下例为简单的 dbm 使用范例

function do_stuff() {
  // 略去复杂的资料处理流程
}
$dbm = dbmopen("lastseen", "w");
if (dbmexists($dbm, $userid)) {
  $last_seen = dbmfetch($dbm, $userid);
} else {
  dbminsert($dbm, $userid, time());
}
do_stuff();
dbmreplace($dbm, $userid, time());
dbmclose($dbm);
?>


 


dbmopen: 开启 DBM 资料库连结。 
dbmclose: 关闭 DBM 资料库。 
dbmexists: 检查键是否存在。 
dbmfetch: 取回指定资料。 
dbminsert: 加入资料。 
dbmreplace: 更动或加入资料。 
dbmdelete: 删除指定资料。 
dbmfirstkey: 取回首笔键名。 
dbmnextkey: 取回下笔键值。 
dblist: 取得 DBM 的资讯。 


--------------------------------------------------------------------------------
 函式:dbmopen() 
--------------------------------------------------------------------------------
 


dbm 类资料库函式库


dbmopen
开启 DBM 资料库连结。

语法: int dbmopen(string filename, string flags);

传回值: 整数

函式种类: 资料库功能


 
 
内容说明 


本函式用来开启指定的资料库。参数 path 为资料库的路径加上资料库名称。参数 mode 值如下表

属性 说明 
r 开启唯读既有资料库 
w 开启可读写既有资料库 
c 开启可读写资料库,若不存在则建立 
n 删去现有资料库,若不存在则建立,之后可读写 


传回值为资料库的代号 ID,若失败则传回 false。 


--------------------------------------------------------------------------------
 函式:dbmclose() 
--------------------------------------------------------------------------------
 


dbm 类资料库函式库


dbmclose
关闭 DBM 资料库。

语法: boolean dbmclose(int handle);

传回值: 布林值

函式种类: 资料库功能


 
 
内容说明 


本函式用来将已开启的资料库关闭。参数 handle 为开启资料库时所传回来的代号 ID。


--------------------------------------------------------------------------------
 函式:dbmexists() 
--------------------------------------------------------------------------------
 


dbm 类资料库函式库


dbmexists
检查键是否存在。

语法: boolean dbmexists(int handle, string key);

传回值: 布林值

函式种类: 资料库功能


 
 
内容说明 


本函式用来检查指定的键是否存在。参数 handle 为开启资料库时所传回来的代号 ID。参数 key 为待检查的键值 (key)。若键存在则传回 true 值。

 

--------------------------------------------------------------------------------
 函式:dbmfetch() 
--------------------------------------------------------------------------------
 


dbm 类资料库函式库


dbmfetch
取回指定资料。

语法: string dbmfetch(int handle, string key);

传回值: 字串

函式种类: 资料库功能


 
 
内容说明 


本函式取得指定的资料。参数 handle 为开启资料库时所传回来的代号 ID。参数 key 为欲取出资料的键值 (key)。传回值即为资料字串,若取出失败则传回 false。

 

--------------------------------------------------------------------------------
 函式:dbminsert() 
--------------------------------------------------------------------------------
 


dbm 类资料库函式库


dbminsert
加入资料。

语法: int dbminsert(int handle, string key, string value);

传回值: 整数

函式种类: 资料库功能


 
 
内容说明 


本函式将加入资料至资料库中。参数 handle 为开启资料库时所传回来的代号 ID。参数 key 为键值 (key) 字串。参数 value 为欲加入的资料内容。成功则传回 0;传回值 -1 表示该资料库档案为唯读的状态;传回值 1 则表示该键已经存在,可用 dbmreplace() 取代。

 

--------------------------------------------------------------------------------
 函式:dbmreplace() 
--------------------------------------------------------------------------------
 


dbm 类资料库函式库


dbmreplace
更动或加入资料。

语法: boolean dbmreplace(int handle, string key, string value);

传回值: 布林值

函式种类: 资料库功能


 
 
内容说明 


本函式更动资料库中的资料,若资料不存在则加入。参数 handle 为开启资料库时所传回来的代号 ID。参数 key 为键值 (key) 字串。参数 value 为欲更动的资料内容。成功则传回 true 值。

 

--------------------------------------------------------------------------------
 函式:dbmdelete() 
--------------------------------------------------------------------------------
 


dbm 类资料库函式库


dbmdelete
删除指定资料。

语法: boolean dbmdelete(int handle, string key);

传回值: 布林值

函式种类: 资料库功能


 
 
内容说明 


本函式将删除指定的资料。参数 handle 为开启资料库时所传回来的代号 ID。参数 key 为欲删除的键值 (key)。若该键值不存在无法删除则传回 false
 

--------------------------------------------------------------------------------
 函式:dbmfirstkey() 
--------------------------------------------------------------------------------
 


dbm 类资料库函式库


dbmfirstkey
取回首笔键名。

语法: string dbmfirstkey(int handle);

传回值: 字串

函式种类: 资料库功能


 
 
内容说明 


本函式取得资料库的第一笔键名 (key)。参数 handle 为开启资料库时所传回来的代号 ID。传回值即为键名,若取出失败则传回 false。值得注意的是资料库的资料没有任何排序的情形,无法预期传回的资料是依何方式排序后的第一笔资料。若需要特定顺序的第一笔资料,则需读回全部的资料到阵列中,再使用 PHP 的排序函式排序后方可取得所需值。

 

--------------------------------------------------------------------------------
 函式:dbmnextkey() 
--------------------------------------------------------------------------------
 


dbm 类资料库函式库


dbmnextkey
取回下笔键值。

语法: string dbmnextkey(int handle, string key);

传回值: 字串

函式种类: 资料库功能


 
 
内容说明 


本函式取得资料库的下一笔键值 (key)。参数 handle 为开启资料库时所传回来的代号 ID。传回值即为键值。


 
 
使用范例 


// 之前已经开启 DBM 资料库。
$key = dbmfirstkey($dbm_id);
while ($key) {
    echo "$key = " . dbmfetch($dbm_id, $key) . "\n";
    $key = dbmnextkey($dbm_id, $key);
}
?> 
 

--------------------------------------------------------------------------------
 函式:dblist() 
--------------------------------------------------------------------------------
 


dbm 类资料库函式库


dblist
取得 DBM 的资讯。

语法: string dblist(void);

传回值: 字串

函式种类: 资料库功能


 
 
内容说明 


本函式取得 DBM 资料库函式馆的相关资讯。本函式不需输入参数,传回值为资讯字串。 (http://www.fanqiang.com)
    进入【UNIX论坛

相关文章
PHP4手册:函数库及函数(四十六) SNMP 网管函式库 (2001-04-18 16:56:55)
PHP4手册:函数库及函数(四十五) Solid 资料库连结函式库 (2001-04-18 16:54:16)
PHP4手册:函数库及函数(四十四) 信号与共享记忆体函式库 (2001-04-18 16:49:09)
PHP4手册:函数库及函数(四十三) 常规表示法函式库 (2001-04-18 16:40:33)
PHP4手册:函数库及函数(四十二) URL 处理函式库 (2001-04-18 16:37:13)
PHP4手册:函数库及函数(四十一) PostgreSQL 资料库函式库 (2001-04-18 15:58:12)
PHP4手册:函数库及函数(四十) PDF 格式档案函式库 - 2 (2001-04-18 15:53:53)
PHP4手册:函数库及函数(四十) PDF 格式档案函式库 - 1 (2001-04-18 15:53:35)
PHP4手册:函数库及函数(三十九) Perl 相容语法函式库 (2001-04-18 15:45:08)
PHP4手册:函数库及函数(三十八) Oracle 资料库函式库 (2001-04-18 15:43:09)

===更多相关===
 

★  樊强制作 欢迎分享  ★