phar_oo_compressed_002.phpt 1.8 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273
  1. --TEST--
  2. Phar: context/compress=GZ
  3. --SKIPIF--
  4. <?php if (!extension_loaded("phar")) die("skip"); ?>
  5. <?php if (!extension_loaded("zlib")) die("skip zlib not present"); ?>
  6. --INI--
  7. phar.readonly=0
  8. phar.require_hash=0
  9. --FILE--
  10. <?php
  11. $fname = dirname(__FILE__) . '/' . basename(__FILE__, '.php') . '.phar.php';
  12. $pname = 'phar://' . $fname;
  13. $file = '<?php __HALT_COMPILER(); ?>';
  14. $files = array();
  15. $files['a'] = 'a';
  16. $files['b'] = 'b';
  17. $files['c'] = 'c';
  18. include 'files/phar_test.inc';
  19. $phar = new Phar($fname);
  20. var_dump(file_get_contents($pname . '/a'));
  21. var_dump($phar['a']->isCompressed());
  22. var_dump(file_get_contents($pname . '/b'));
  23. var_dump($phar['b']->isCompressed());
  24. var_dump(file_get_contents($pname . '/c'));
  25. var_dump($phar['c']->isCompressed());
  26. $context = stream_context_create(array('phar'=>array('compress'=>Phar::GZ)));
  27. file_put_contents($pname . '/b', b'new b');
  28. file_put_contents($pname . '/c', b'new c', 0, $context);
  29. file_put_contents($pname . '/d', b'new d');
  30. file_put_contents($pname . '/e', b'new e', 0, $context);
  31. $phar = new Phar($fname);
  32. var_dump(file_get_contents($pname . '/a'));
  33. var_dump($phar['a']->isCompressed());
  34. var_dump(file_get_contents($pname . '/b'));
  35. var_dump($phar['b']->isCompressed());
  36. var_dump(file_get_contents($pname . '/c'));
  37. var_dump($phar['c']->isCompressed());
  38. var_dump(file_get_contents($pname . '/d'));
  39. var_dump($phar['d']->isCompressed());
  40. var_dump(file_get_contents($pname . '/e'));
  41. var_dump($phar['e']->isCompressed());
  42. ?>
  43. ===DONE===
  44. --CLEAN--
  45. <?php
  46. unlink(dirname(__FILE__) . '/' . basename(__FILE__, '.clean.php') . '.phar.php');
  47. ?>
  48. --EXPECTF--
  49. string(1) "a"
  50. bool(false)
  51. string(1) "b"
  52. bool(false)
  53. string(1) "c"
  54. bool(false)
  55. string(1) "a"
  56. bool(false)
  57. string(5) "new b"
  58. bool(false)
  59. string(5) "new c"
  60. bool(true)
  61. string(5) "new d"
  62. bool(false)
  63. string(5) "new e"
  64. bool(true)
  65. ===DONE===