PHP Conference Japan 2024

dba_fetch

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

dba_fetch提取由鍵值指定的資料

描述

dba_fetch(string|array $key, Dba\Connection $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\Connection 實例,由 dba_open()dba_popen() 返回。

skip

當使用 cdb 資料庫時,要忽略的鍵值對數量。對於所有其他不支援具有相同名稱多個鍵的資料庫,此值將被忽略。

返回值

如果找到鍵值/資料對,則返回相關聯的字串,否則返回 false

變更記錄

版本 描述
8.4.0 dba 參數現在需要一個 Dba\Connection 實例;先前,需要一個有效的 dba 資源
8.3.0 現在已棄用將 dba 作為第三個參數呼叫 dba_fetch()
8.2.0 為符合 PHP 使用者端的語意,dba_fetch() 的可選 skip 參數現在位於結尾。先前重載的簽名仍然被接受,但不建議使用。

參見

新增筆記

使用者貢獻的筆記 1 筆筆記

khan666 at lycos dot co dot kr
14 年前
:: 提取陣列排序。

例) 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 檔案名稱

$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