PHP Conference Nagoya 2025

dba_nextkey

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

dba_nextkey获取下一个键

说明

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

dba_nextkey() 返回数据库的下一个键并移动内部键指针。

参数

dba

一个由 dba_open()dba_popen() 返回的 Dba\Connection 实例。

返回值

成功时返回键, 或者在失败时返回 false

更新日志

版本 说明
8.4.0 dba 参数现在接受 Dba\Connection 实例, 之前接受有效的 dba resource

参见

添加备注

用户贡献的备注 1 note

up
0
phpnet at araxon dot sk
2 years ago
It should be noted that it is not always safe to iterate through the database while changing it at the same time. For example:

<?php
$db
=dba_open(...);

// remove all values shorter than 10 characters
for ($key=dba_firstkey($db); $key!==false; $key=dba_nextkey($db)) {
$s=dba_fetch($key, $db);
if (
strlen($s)<10) {
dba_delete($key, $db);
}
}
?>

The above example will work fine with db4 handler, but not with gdbm. It is handler specific.
To Top