|
php.net | support | documentation | report a bug | advanced search | search howto | statistics | random bug | login |
PatchesPull RequestsHistoryAllCommentsChangesGit/SVN commits
[2016-08-25 16:50 UTC] cmb@php.net
[2016-08-25 16:50 UTC] cmb@php.net
-Status: Open
+Status: Closed
[2016-08-25 16:51 UTC] cmb@php.net
-Assigned To:
+Assigned To: cmb
[2016-08-25 16:51 UTC] cmb@php.net
[2016-10-17 10:09 UTC] bwoebi@php.net
|
|||||||||||||||||||||||||||
Copyright © 2001-2025 The PHP GroupAll rights reserved. |
Last updated: Sat Oct 25 03:00:01 2025 UTC |
Description: ------------ When use compound keys (group, key) with engine inifile, you cannot read multiple values with skip value -1. Test script: --------------- <?php $handle = dba_open('/tmp/test1.ini', 'n', 'inifile'); dba_insert('foo', 23, $handle); dba_insert('foo', 42, $handle); dba_insert('foo', 1337, $handle); var_dump(dba_fetch('foo', -1, $handle)); var_dump(dba_fetch('foo', -1, $handle)); var_dump(dba_fetch('foo', -1, $handle)); dba_close($handle); $handle = dba_open('/tmp/test2.ini', 'n', 'inifile'); dba_insert(['foo', 'bar'], 23, $handle); dba_insert(['foo', 'bar'], 42, $handle); dba_insert(['foo', 'bar'], 1337, $handle); var_dump(dba_fetch(['foo', 'bar'], -1, $handle)); var_dump(dba_fetch(['foo', 'bar'], -1, $handle)); var_dump(dba_fetch(['foo', 'bar'], -1, $handle)); dba_close($handle); $handle = dba_open('/tmp/test3.ini', 'n', 'inifile'); dba_insert('[foo]bar', 23, $handle); dba_insert('[foo]bar', 42, $handle); dba_insert('[foo]bar', 1337, $handle); var_dump(dba_fetch('[foo]bar', -1, $handle)); var_dump(dba_fetch('[foo]bar', -1, $handle)); var_dump(dba_fetch('[foo]bar', -1, $handle)); dba_close($handle); $handle = dba_open('/tmp/test4.ini', 'n', 'inifile'); dba_insert('[foo]bar', 23, $handle); dba_insert('[foo]bar', 42, $handle); dba_insert('[foo]bar', 1337, $handle); var_dump(dba_fetch('[foo]bar', 0, $handle)); var_dump(dba_fetch('[foo]bar', 1, $handle)); var_dump(dba_fetch('[foo]bar', 2, $handle)); dba_close($handle); Expected result: ---------------- string(2) "23" string(2) "42" string(4) "1337" string(2) "23" string(2) "42" string(4) "1337" string(2) "23" string(2) "42" string(4) "1337" string(2) "23" string(2) "42" string(4) "1337" Actual result: -------------- string(2) "23" string(2) "42" string(4) "1337" string(2) "23" bool(false) bool(false) string(2) "23" bool(false) bool(false) string(2) "23" string(2) "42" string(4) "1337"