PHP Conference Nagoya 2025

dba_firstkey

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

dba_firstkey最初のキーを取得する

説明

dba_firstkey(Dba\Connection $dba): string|false

dba_firstkey() はデータベースの最初のキーを返し、 内部キーポインタをリセットします。 この関数によりデータベース全体を連続的にサーチすることが可能になります。

パラメータ

dba

dba_open() または dba_popen() によって返される Dba\Connection インスタンス

戻り値

成功した場合にキー、失敗した場合に false を返します。

変更履歴

バージョン 説明
8.4.0 dbaDba\Connection クラスのインスタンスを期待するようになりました。 これより前のバージョンでは、 dba リソース を期待していました。

参考

add a note

User Contributed Notes 3 notes

up
0
jacky dot jackyhung dot net
22 years ago
for ($key = dba_firstkey($this->handle); $key !== false; $key = dba_nextkey($this->handle)) {
$keyset[] = $key;
} // end for
up
-1
rcracer91 at gmail dot com
15 years ago
I wondered why it wasn't already written, so I did because I think working with associative arrays is always as comfortable as can be

<?php
function dba_fetch_assoc($handle) {
$assoc = array();
for(
$k = dba_firstkey($handle); $k != false; $k = dba_nextkey($handle)) {
$assoc[$k] = dba_fetch($k, $handle);
}
return
$assoc;
}
?>
up
-1
psycho-logic at excite dot com
21 years ago
Looks like Jacky is using some DB object? I don't know if it's native to PHP or written on it's own... Anyways this is what I use:

$DBCon = dba_open("/tmp/test_db.db2", "r", "db2") or die("Uh oh, can't open the database :(");
if ($the_key = dba_firstkey($DBCon)) do {
print("Key: $the_key Value:");
print dba_fetch($the_key, $DBCon);
print("<BR>");
} while ($the_key = dba_nextkey($DBCon));
print ("<BR><BR><BR>Well looks like we're done here :-)");
To Top