sqlite3_28_clear_bindings.phpt 1.3 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465
  1. --TEST--
  2. SQLite3_stmt::clear prepared statement results
  3. --SKIPIF--
  4. <?php require_once(__DIR__ . '/skipif.inc'); ?>
  5. --FILE--
  6. <?php
  7. require_once(__DIR__ . '/new_db.inc');
  8. define('TIMENOW', time());
  9. echo "Creating Table\n";
  10. var_dump($db->exec('CREATE TABLE test (time INTEGER, id STRING)'));
  11. echo "INSERT into table\n";
  12. var_dump($db->exec("INSERT INTO test (time, id) VALUES (" . TIMENOW . ", 'a')"));
  13. var_dump($db->exec("INSERT INTO test (time, id) VALUES (" . TIMENOW . ", 'b')"));
  14. echo "SELECTING results\n";
  15. $stmt = $db->prepare("SELECT * FROM test WHERE id = ? ORDER BY id ASC");
  16. $foo = 'c';
  17. echo "BINDING Parameter\n";
  18. var_dump($stmt->bindParam(1, $foo, SQLITE3_TEXT));
  19. $foo = 'a';
  20. $results = $stmt->execute();
  21. while ($result = $results->fetchArray(SQLITE3_NUM)) {
  22. var_dump($result);
  23. }
  24. $stmt->reset();
  25. $stmt->clear();
  26. var_dump($stmt->bindValue(1, 'b', SQLITE3_TEXT));
  27. $results = $stmt->execute();
  28. while ($result = $results->fetchArray(SQLITE3_NUM)) {
  29. var_dump($result);
  30. }
  31. $results->finalize();
  32. echo "Closing database\n";
  33. var_dump($db->close());
  34. echo "Done\n";
  35. ?>
  36. --EXPECTF--
  37. Creating Table
  38. bool(true)
  39. INSERT into table
  40. bool(true)
  41. bool(true)
  42. SELECTING results
  43. BINDING Parameter
  44. bool(true)
  45. array(2) {
  46. [0]=>
  47. int(%d)
  48. [1]=>
  49. string(1) "a"
  50. }
  51. bool(true)
  52. array(2) {
  53. [0]=>
  54. int(%d)
  55. [1]=>
  56. string(1) "b"
  57. }
  58. Closing database
  59. bool(true)
  60. Done