for ($key = dba_firstkey($this->handle); $key !== false; $key = dba_nextkey($this->handle)) { $keyset[] = $key; } // end for
(PHP 4, PHP 5, PHP 7, PHP 8)
dba_firstkey — 最初のキーを取得する
dba_firstkey() はデータベースの最初のキーを返し、 内部キーポインタをリセットします。 この関数によりデータベース全体を連続的にサーチすることが可能になります。
成功した場合にキー、失敗した場合に false
を返します。
バージョン | 説明 |
---|---|
8.4.0 |
dba は Dba\Connection クラスのインスタンスを期待するようになりました。
これより前のバージョンでは、 dba リソース を期待していました。
|
for ($key = dba_firstkey($this->handle); $key !== false; $key = dba_nextkey($this->handle)) { $keyset[] = $key; } // end for
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<?phpfunction 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;}?>
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 :-)");