doubleclose.phpt 978 B

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051
  1. --TEST--
  2. close() called twice
  3. --EXTENSIONS--
  4. zip
  5. --FILE--
  6. <?php
  7. echo "Procedural\n";
  8. $zip = zip_open(__DIR__ . '/test.zip');
  9. if (!is_resource($zip)) {
  10. die("Failure");
  11. }
  12. var_dump(zip_close($zip));
  13. try {
  14. var_dump(zip_close($zip));
  15. } catch (TypeError $e) {
  16. echo $e->getMessage(), "\n";
  17. }
  18. echo "Object\n";
  19. $zip = new ZipArchive();
  20. if (!$zip->open(__DIR__ . '/test.zip')) {
  21. die('Failure');
  22. }
  23. if ($zip->status == ZIPARCHIVE::ER_OK) {
  24. var_dump($zip->close());
  25. try {
  26. $zip->close();
  27. } catch (ValueError $err) {
  28. echo $err->getMessage(), PHP_EOL;
  29. }
  30. } else {
  31. die("Failure");
  32. }
  33. ?>
  34. Done
  35. --EXPECTF--
  36. Procedural
  37. Deprecated: Function zip_open() is deprecated in %s on line %d
  38. Deprecated: Function zip_close() is deprecated in %s on line %d
  39. NULL
  40. Deprecated: Function zip_close() is deprecated in %s on line %d
  41. zip_close(): supplied resource is not a valid Zip Directory resource
  42. Object
  43. bool(true)
  44. Invalid or uninitialized Zip object
  45. Done