phar_setdefaultstub.phpt 2.6 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980
  1. --TEST--
  2. Phar: Phar::setDefaultStub() with and without arg, zip-based phar
  3. --SKIPIF--
  4. <?php if (!extension_loaded("phar")) die("skip"); ?>
  5. --INI--
  6. phar.readonly=0
  7. --FILE--
  8. <?php
  9. $fname = dirname(__FILE__) . '/' . basename(__FILE__, '.php') . '.phar.zip';
  10. $phar = new Phar($fname);
  11. $phar['a.php'] = '<php echo "this is a\n"; ?>';
  12. $phar['b.php'] = '<php echo "this is b\n"; ?>';
  13. $phar->setStub('<?php echo "Hello World\n"; __HALT_COMPILER(); ?>');
  14. var_dump($phar->getStub());
  15. echo "============================================================================\n";
  16. echo "============================================================================\n";
  17. try {
  18. $phar->setDefaultStub();
  19. $phar->stopBuffering();
  20. } catch(Exception $e) {
  21. echo $e->getMessage(). "\n";
  22. }
  23. var_dump($phar->getStub());
  24. echo "============================================================================\n";
  25. echo "============================================================================\n";
  26. try {
  27. $phar->setDefaultStub('my/custom/thingy.php');
  28. $phar->stopBuffering();
  29. } catch(Exception $e) {
  30. echo $e->getMessage(). "\n";
  31. }
  32. var_dump($phar->getStub());
  33. echo "============================================================================\n";
  34. echo "============================================================================\n";
  35. try {
  36. $phar->setDefaultStub('my/custom/thingy.php', 'the/web.php');
  37. $phar->stopBuffering();
  38. } catch(Exception $e) {
  39. echo $e->getMessage(). "\n";
  40. }
  41. var_dump($phar->getStub());
  42. ?>
  43. ===DONE===
  44. --CLEAN--
  45. <?php
  46. unlink(dirname(__FILE__) . '/' . basename(__FILE__, '.clean.php') . '.phar.zip');
  47. ?>
  48. --EXPECTF--
  49. string(51) "<?php echo "Hello World\n"; __HALT_COMPILER(); ?>
  50. "
  51. ============================================================================
  52. ============================================================================
  53. string(60) "<?php // zip-based phar archive stub file
  54. __HALT_COMPILER();"
  55. ============================================================================
  56. ============================================================================
  57. Warning: Phar::setDefaultStub(): method accepts no arguments for a tar- or zip-based phar stub, 1 given in %sphar_setdefaultstub.php on line %d
  58. string(60) "<?php // zip-based phar archive stub file
  59. __HALT_COMPILER();"
  60. ============================================================================
  61. ============================================================================
  62. Warning: Phar::setDefaultStub(): method accepts no arguments for a tar- or zip-based phar stub, 2 given in %sphar_setdefaultstub.php on line %d
  63. string(60) "<?php // zip-based phar archive stub file
  64. __HALT_COMPILER();"
  65. ===DONE===