PHPCon Poland 2024

dba_fetch

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

dba_fetchFetch data specified by key

说明

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

Overloaded signature deprecated as of 8.3.0:

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

dba_fetch() fetches the data specified by key from the database specified with dba.

参数

key

The key the data is specified by.

注意:

When working with inifiles this function accepts arrays as keys where index 0 is the group and index 1 is the value name. See: dba_key_split().

dba

The database handler, returned by dba_open() or dba_popen().

skip

The number of key-value pairs to ignore when using cdb databases. This value is ignored for all other databases which do not support multiple keys with the same name.

返回值

Returns the associated string if the key/data pair is found, false otherwise.

更新日志

版本 说明
8.3.0 Calling dba_fetch() with dba as the 3rd argument is now deprecated.
8.2.0 dba_fetch()'s optional skip argument is now at the end in line with PHP userland semantics. The previously overloaded signature is still accepted but discouraged.

参见

add a note

User Contributed Notes 1 note

up
2
khan666 at lycos dot co dot kr
13 years ago
:: fetch array sort.

ex) TEST_DATA.DB

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

<?php
# LIST SORT
$DB4_DATABASE = "TEST_DATA.DB4";
$DIV = "/";
$_FILE = "$DATA_DIR/HUTM_NETWORK_ROUTER.DB"; // DB4 FileName

$db = dba_open($DB4_DATABASE,"r","db4");
$key = dba_firstkey($db);
$ii = 0;
while(
$key != NULL)
{
$LIST[$ii] = explode($DIV,dba_fetch($key, $db)); // fetch array
$key = dba_nextkey($db);
$ii++;
}
dba_close($db);
$total = $ii; // total count

# date sort
sort($LIST,SORT_NUMERIC); // numeric key sort ..

# list display
for($i=0;$i<$total;$i++)
{
$oData = explode($DIV,$LIST[$i]); // key + value (sort)

$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";
}
?>

::result::

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