dba_fetch

(PHP 4, PHP 5, PHP 7, PHP 8)

dba_fetch获取由键指定的的数据

描述

dba_fetch(string|array $key, resource $dba, int $skip = 0): string|false

从 8.3.0 版本开始,重载签名已弃用

dba_fetch(string|array $key, int $skip, resource $dba): string

dba_fetch() 从使用 dba 指定的数据库中获取由 key 指定的数据。

参数

key

数据所指定的键。

注意:

在处理 inifiles 时,此函数接受数组作为键,其中索引 0 是组,索引 1 是值名称。参见:dba_key_split()

dba

数据库句柄,由 dba_open()dba_popen() 返回。

skip

使用 cdb 数据库时忽略的键值对数量。此值对于所有其他不支持具有相同名称的多个键的数据库都被忽略。

返回值

如果找到键/数据对,则返回关联的字符串,否则返回 false

变更日志

版本 描述
8.3.0 现在使用 dba 作为第三个参数调用 dba_fetch() 已被弃用。
8.2.0 dba_fetch() 的可选跳过参数现在位于末尾,与 PHP 用户空间语义一致。之前重载的签名仍然被接受,但建议不要使用。

参见

添加备注

用户贡献的备注 1 条备注

khan666 at lycos dot co dot kr
13 年前
:: 提取数组排序。

例如)TEST_DATA.DB

1/korea/5000/word 1
10/japan/25000/word 10
21/china/130000/word 21
2/usa/35000/word 2

<?php
# 列表排序
$DB4_DATABASE = "TEST_DATA.DB4";
$DIV = "/";
$_FILE = "$DATA_DIR/HUTM_NETWORK_ROUTER.DB"; // DB4 文件名

$db = dba_open($DB4_DATABASE,"r","db4");
$key = dba_firstkey($db);
$ii = 0;
while(
$key != NULL)
{
$LIST[$ii] = explode($DIV,dba_fetch($key, $db)); // 提取数组
$key = dba_nextkey($db);
$ii++;
}
dba_close($db);
$total = $ii; // 总计

# 日期排序
sort($LIST,SORT_NUMERIC); // 按数字键排序 ..

# 列表显示
for($i=0;$i<$total;$i++)
{
$oData = explode($DIV,$LIST[$i]); // 键 + 值(排序)

$key = trim(chop($oData[0])); # 键号
$name = trim(chop($oData[1])); # 名称
$count = trim(chop($oData[2])); # 数值
$word = trim(chop($oData[3])); # 说明

echo "$key / $name / $count / $word <br>\r\n";
}
?>

:: 结果:

1/korea/5000/word 1
2/usa/35000/word 2
10/japan/25000/word 10
21/china/130000/word 21
To Top