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 — Liefert den ersten Schlüssel
dba_firstkey() gibt den ersten Schlüssel aus der Datenbank zurück und setzt den internen Schlüssel-Zeiger zurück. Dies erlaubt eine sequentielle Suche durch die gesamte Datenbank.
   Gibt bei Erfolg den Schlüssel zurück. Bei einem Fehler wird false zurückgegeben.
  
| Version | Beschreibung | 
|---|---|
| 8.4.0 | Der Parameter dbaerwartet nun eine Instanz von Dba\Connection;
  zuvor wurde eine gültigedba-Ressource erwartet. | 
for ($key = dba_firstkey($this->handle); $key !== false; $key = dba_nextkey($this->handle)) {
            $keyset[] = $key;
        } // end forI 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;
}
?>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 :-)");