CakeFest 2024: The Official CakePHP Conference

dba_fetch

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

dba_fetchキーが指すデータを取得する

説明

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

以下はオーバーロードされているが、PHP 8.3.0 以降では推奨されないシグネチャです:

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

dba_fetch() は、dba が指すデータベースから key が指すデータを 取得します。

パラメータ

key

データを取得するキー。

注意:

inifile を利用する際には、この関数は配列を受け入れることが可能です。 インデックス 0 にはグループ名、インデックス 1 には値の名前を格納します。 dba_key_split() も参照ください。

dba

dba_open() あるいは dba_popen() によって返されたデータベースハンドル。

skip

cdb データベースを使用する際に無視する キー / 値 の組み合わせ数。 複数のキーに同じ名前をつけることがサポートされていないデータベースです、 この値は無視されます。

戻り値

キー / データの組が見つかった場合にそれに関連する文字列、 それ以外の場合に false を返します。

変更履歴

バージョン 説明
8.3.0 dba を第3引数に渡して dba_fetch() をコールすることは、推奨されなくなりました。
8.2.0 dba_fetch() 関数のオプションの skip 引数は、 PHP でユーザーが使える関数のセマンティクスに従い、 最後に置かれるようになりました。 以前のオーバーロードされたシグネチャも引き続き許可されますが、 使わないことをお勧めします。

参考

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