Annotation of embedaddon/php/ext/sqlite/tests/sqlite_023.phpt, revision 1.1.1.1
1.1 misho 1: --TEST--
2: sqlite: sqlite_[has_]prev
3: --INI--
4: sqlite.assoc_case=0
5: --SKIPIF--
6: <?php # vim:ft=php
7: if (!extension_loaded("sqlite")) print "skip"; ?>
8: --FILE--
9: <?php
10: include "blankdb.inc";
11:
12: $data = array(
13: "one",
14: "two",
15: "three"
16: );
17:
18: sqlite_query("CREATE TABLE strings(a)", $db);
19:
20: foreach ($data as $str) {
21: sqlite_query("INSERT INTO strings VALUES('$str')", $db);
22: }
23:
24: $r = sqlite_query("SELECT a FROM strings", $db, SQLITE_NUM);
25:
26: echo "====TRAVERSE====\n";
27: for(sqlite_rewind($r); sqlite_valid($r); sqlite_next($r)) {
28: var_dump(sqlite_current($r));
29:
30: }
31: echo "====REVERSE====\n";
32: do {
33: sqlite_prev($r);
34: var_dump(sqlite_current($r));
35: } while(sqlite_has_prev($r));
36:
37: echo "====UNBUFFERED====\n";
38:
39: $r = sqlite_unbuffered_query("SELECT a FROM strings", $db, SQLITE_NUM);
40:
41: echo "====TRAVERSE====\n";
42: for(sqlite_rewind($r); sqlite_valid($r); sqlite_next($r)) {
43: var_dump(sqlite_current($r));
44:
45: }
46: echo "====REVERSE====\n";
47: do {
48: sqlite_prev($r);
49: var_dump(sqlite_current($r));
50: } while(sqlite_has_prev($r));
51:
52: sqlite_close($db);
53:
54: echo "====DONE!====\n";
55: ?>
56: --EXPECTF--
57: ====TRAVERSE====
58: array(1) {
59: [0]=>
60: string(3) "one"
61: }
62: array(1) {
63: [0]=>
64: string(3) "two"
65: }
66: array(1) {
67: [0]=>
68: string(5) "three"
69: }
70: ====REVERSE====
71: array(1) {
72: [0]=>
73: string(5) "three"
74: }
75: array(1) {
76: [0]=>
77: string(3) "two"
78: }
79: array(1) {
80: [0]=>
81: string(3) "one"
82: }
83: ====UNBUFFERED====
84: ====TRAVERSE====
85:
86: Warning: sqlite_rewind(): Cannot rewind an unbuffered result set in %ssqlite_023.php on line %d
87: array(1) {
88: [0]=>
89: string(3) "one"
90: }
91: array(1) {
92: [0]=>
93: string(3) "two"
94: }
95: array(1) {
96: [0]=>
97: string(5) "three"
98: }
99: ====REVERSE====
100:
101: Warning: sqlite_prev(): you cannot use sqlite_prev on unbuffered querys in %ssqlite_023.php on line %d
102: bool(false)
103:
104: Warning: sqlite_has_prev(): you cannot use sqlite_has_prev on unbuffered querys in %ssqlite_023.php on line %d
105: ====DONE!====
FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>