sqlite3stmt_paramCount_basic.phpt 1.3 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859
  1. --TEST--
  2. SQLite3Stmt::paramCount basic test
  3. --EXTENSIONS--
  4. sqlite3
  5. --FILE--
  6. <?php
  7. require_once(__DIR__ . '/new_db.inc');
  8. echo "Creating Table\n";
  9. var_dump($db->exec('CREATE TABLE foobar (id INTEGER, name STRING, city STRING)'));
  10. echo "INSERT into table\n";
  11. var_dump($db->exec("INSERT INTO foobar (id, name, city) VALUES (1, 'john', 'LA')"));
  12. var_dump($db->exec("INSERT INTO foobar (id, name, city) VALUES (2, 'doe', 'SF')"));
  13. $queryArray = array(
  14. "SELECT * FROM foobar WHERE id = ? ORDER BY id ASC",
  15. "SELECT * FROM foobar WHERE id = 2 ORDER BY id ASC",
  16. "SELECT * FROM foobar WHERE id = :id AND name = :name ORDER BY id ASC",
  17. "SELECT * FROM foobar WHERE id = 1 AND name = :name ORDER BY id ASC",
  18. );
  19. echo "SELECTING results\n";
  20. foreach($queryArray as $key => $query) {
  21. $stmt = $db->prepare($query);
  22. echo 'Param count for query ' . ($key + 1) . ":\n";
  23. var_dump($stmt->paramCount());
  24. $result = $stmt->execute();
  25. }
  26. echo "Closing database\n";
  27. $stmt = null;
  28. $result = null;
  29. var_dump($db->close());
  30. echo "Done\n";
  31. ?>
  32. --EXPECT--
  33. Creating Table
  34. bool(true)
  35. INSERT into table
  36. bool(true)
  37. bool(true)
  38. SELECTING results
  39. Param count for query 1:
  40. int(1)
  41. Param count for query 2:
  42. int(0)
  43. Param count for query 3:
  44. int(2)
  45. Param count for query 4:
  46. int(1)
  47. Closing database
  48. bool(true)
  49. Done