bug60244.phpt 1.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657
  1. --TEST--
  2. Bug #60244 (pg_fetch_* functions do not validate that row param is >0)
  3. --SKIPIF--
  4. <?php
  5. include("skipif.inc");
  6. ?>
  7. --FILE--
  8. <?php
  9. include 'config.inc';
  10. $db = pg_connect($conn_str);
  11. $result = pg_query("select 'a' union select 'b'");
  12. var_dump(pg_fetch_array($result, -1));
  13. var_dump(pg_fetch_assoc($result, -1));
  14. var_dump(pg_fetch_object($result, -1));
  15. var_dump(pg_fetch_row($result, -1));
  16. var_dump(pg_fetch_array($result, 0));
  17. var_dump(pg_fetch_assoc($result, 0));
  18. var_dump(pg_fetch_object($result, 0));
  19. var_dump(pg_fetch_row($result, 0));
  20. pg_close($db);
  21. ?>
  22. --EXPECTF--
  23. Warning: pg_fetch_array(): The row parameter must be greater or equal to zero in %sbug60244.php on line %d
  24. bool(false)
  25. Warning: pg_fetch_assoc(): The row parameter must be greater or equal to zero in %sbug60244.php on line %d
  26. bool(false)
  27. Warning: pg_fetch_object(): The row parameter must be greater or equal to zero in %sbug60244.php on line %d
  28. bool(false)
  29. Warning: pg_fetch_row(): The row parameter must be greater or equal to zero in %sbug60244.php on line %d
  30. bool(false)
  31. array(2) {
  32. [0]=>
  33. string(1) "a"
  34. ["?column?"]=>
  35. string(1) "a"
  36. }
  37. array(1) {
  38. ["?column?"]=>
  39. string(1) "a"
  40. }
  41. object(stdClass)#1 (1) {
  42. ["?column?"]=>
  43. string(1) "a"
  44. }
  45. array(1) {
  46. [0]=>
  47. string(1) "a"
  48. }