phar_setalias2.phpt 951 B

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647
  1. --TEST--
  2. Phar::setAlias() error zip-based
  3. --EXTENSIONS--
  4. phar
  5. --INI--
  6. phar.require_hash=0
  7. phar.readonly=0
  8. --FILE--
  9. <?php
  10. $fname = __DIR__ . '/' . basename(__FILE__, '.php') . '.phar.zip';
  11. $phar = new Phar($fname);
  12. $phar->setStub('<?php echo "first stub\n"; __HALT_COMPILER(); ?>');
  13. $phar->setAlias('hio');
  14. $files = array();
  15. $files['a'] = 'a';
  16. $files['b'] = 'b';
  17. $files['c'] = 'c';
  18. foreach ($files as $n => $file) {
  19. $phar[$n] = $file;
  20. }
  21. $phar->stopBuffering();
  22. echo $phar->getAlias() . "\n";
  23. $phar->setAlias('test');
  24. echo $phar->getAlias() . "\n";
  25. $b = $phar;
  26. $phar = new Phar(__DIR__ . '/notphar.phar');
  27. try {
  28. $phar->setAlias('test');
  29. } catch (Exception $e) {
  30. echo $e->getMessage() . "\n";
  31. }
  32. ?>
  33. --CLEAN--
  34. <?php
  35. unlink(__DIR__ . '/' . basename(__FILE__, '.clean.php') . '.phar.zip');
  36. __HALT_COMPILER();
  37. ?>
  38. --EXPECTF--
  39. hio
  40. test
  41. alias "test" is already used for archive "%sphar_setalias2.phar.zip" and cannot be used for other archives